Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有两个 4x4 OPENGL 矩阵 -
第一个矩阵在第 0 帧保存对象的旋转和位置。
第二个矩阵保存对象在第 X 帧的旋转和位置;
我想检索一个对象在第 0 帧和 X 之间的移动偏移量,如果我只是减去两者,这是否足够(可能)?
CMatrix4x4 offsetMatrix = matrixAtFrameX - matrixAtFrame0;
我正在做的是每帧导出骨骼变换矩阵,其中该矩阵是动画的第 0 帧和第 X 帧之间的变换的偏移量。
我可以减去两个矩阵吗?
结果如何?
您需要将第 x 帧的矩阵乘以第 0 帧的矩阵的逆矩阵。
matrixOffset = inverse(matrixAtFrame0) * matrixAtFrameX
这将为您提供帧之间的相对变换和旋转。