【发布时间】:2015-10-07 12:37:56
【问题描述】:
我想在本地空间中围绕 x 和 y、z 轴旋转我的立方体。但是如果我使用D3DXMatrixRotation(),并且我在 x 轴之后围绕 y 旋转,它仍然在世界空间中旋转。如何在本地空间中旋转对象?
【问题讨论】:
我想在本地空间中围绕 x 和 y、z 轴旋转我的立方体。但是如果我使用D3DXMatrixRotation(),并且我在 x 轴之后围绕 y 旋转,它仍然在世界空间中旋转。如何在本地空间中旋转对象?
【问题讨论】:
转换的典型设置是:
world * view * projection
world 矩阵从本地(即模型)空间转换为世界空间,因此更改世界矩阵将导致新的世界空间位置。
您的意思是说您想要围绕与本地空间原点不同的点进行旋转?
PS:请注意,D3DXMatrixRotation* 用于旧版 D3DXMath。您应该考虑在DirectX Tool Kit 中使用DirectXMath 或SimpleMath 包装器。
【讨论】: