我有两个 4x4 OPENGL 矩阵 -
第一个矩阵保存第 0 帧处对象的旋转和位置。
第二个矩阵保存对象在 X 帧处的旋转和位置;
我想检索对象在第 0 帧和 X 帧之间的移动偏移量, 如果我只减去两者就足够了(可能)吗?
CMatrix4x4 offsetMatrix = matrixAtFrameX - matrixAtFrame0;
我正在做的是导出每帧骨骼变换矩阵,其中该矩阵是动画第 0 帧和 X 帧之间变换的偏移量。
我可以将两个矩阵相减吗?
结果是什么?
最佳答案
您需要将第 x 帧处的矩阵与第 0 帧处矩阵的逆矩阵相乘。
matrixOffset = inverse(matrixAtFrame0) * matrixAtFrameX
这将为您提供帧之间的相对变换和旋转。
关于math - 两个 4x4 矩阵相减 - 这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10176456/