我认为这是一个直截了当的问题,但它困扰了我好几天。
我的问题是:在世界坐标中应用一些变换后找到模型的顶点位置。
我试着更清楚:我有一个简单的旋转模型。我无法在世界上找到这个模型的位置。例如,如果我采用边界球体位置,它在旋转后不会改变。
我非常感谢任何帮助。
答案 0 :(得分:0)
我相信你在询问如何通过世界矩阵转换后确定单个三维向量的世界空间位置。
假设您拥有模型的位置,以及您正在转换模型的世界矩阵,您可以使用以下方法将单个Vector3转换为世界空间。
var worldMatrix = Matrix.CreateRotationZ(...);
var modelSpacePosition = new Vector3(...);
var worldSpacePosition = Vector3.Transform(modelSpacePosition, worldMatrix);