【发布时间】:2013-12-05 09:02:04
【问题描述】:
我在屏幕上绘制了一个立方体,我想旋转和平移场景:
// Translation
XMStoreFloat4x4( &m_constantBufferData.model, XMMatrixTranspose( XMMatrixTranslation( placement->GetPosX(), placement->GetPosY(), placement->GetPosZ() ) ) );
// Rotation
XMStoreFloat4x4( &m_constantBufferData.model, XMMatrixTranspose(XMMatrixRotationX( placement->GetRotX() ) ) );
XMStoreFloat4x4( &m_constantBufferData.model, XMMatrixTranspose(XMMatrixRotationY( placement->GetRotY() ) ) );
XMStoreFloat4x4( &m_constantBufferData.model, XMMatrixTranspose(XMMatrixRotationZ( placement->GetRotZ() ) ) );
问题是,只有翻译工作......在进行旋转之前我是否必须以某种方式设置一些东西。
- 我在 Visual Studio 2012 Windows Phone 中使用了默认的 Windows 8 Phone Direct3D C++ 项目。
- 我已经传入了更多变量,感谢智能感知,发现有一个矩阵转换函数
- 我将我的定位添加到此矩阵中,并将旋转连接到一些自定义变量
- 立方体会移动(平移),但我想我需要以某种方式保存这个移动,然后进行旋转。
我可以添加什么来帮助解决问题吗?
【问题讨论】:
标签: c++ windows-phone-8 direct3d c++-cx