我有一个代表场景中模型的父类对象。这个对象包含了一个三维向量 position
,用于表示它在场景中的位置,以及三个变量 x
、y
和 z
,用于描述它沿着这些轴的旋转。它的变换矩阵计算如下:
Matrix.CreateRotationX(x) *
Matrix.CreateRotationY(y) *
Matrix.CreateRotationZ(z) *
Matrix.CreateTranslation(position)
这一切都很好,但在某些情况下,我需要根据规范化的方向向量和上向量计算x
、y
和z
的值。你该怎么做呢?
x
、y
和z
变量中得到所有三个轴的旋转角度,以便稍后可以使用Matrix
类的CreateRotation...
方法计算旋转矩阵。 - Matthew Bird