做个笔记吧。刚用Unity不久的老萌新表示很崩溃
Unity的矩阵是左乘的。 也就是说顶点是要写在后面的。矩阵相乘的话,先应用的变换写后面。
M = M1 * M0
v = M * v0;
Matrix4x4 * Vector3 . 那么 默认进行的是 方向的变换. Matrix 4x4 里的平移会被去掉。
如果你的Vector3 是 个 position. 你要么转成Vector4后再算。要么用matRay.MultiplyPoint3x4
做个笔记吧。刚用Unity不久的老萌新表示很崩溃
Unity的矩阵是左乘的。 也就是说顶点是要写在后面的。矩阵相乘的话,先应用的变换写后面。
M = M1 * M0
v = M * v0;
Matrix4x4 * Vector3 . 那么 默认进行的是 方向的变换. Matrix 4x4 里的平移会被去掉。
如果你的Vector3 是 个 position. 你要么转成Vector4后再算。要么用matRay.MultiplyPoint3x4