减去两个4x4矩阵 - 这可能吗?

时间:2012-04-16 14:51:42

标签: math opengl matrix

我有两个4x4 OPENGL矩阵 -

  • 第一个矩阵保持对象在第0帧的旋转和位置。

  • 第二个矩阵保持对象在第X帧的旋转和位置;

我想检索第0帧和第X帧之间对象的移动偏移, 如果我只减去它们就足够了(可能)吗?

CMatrix4x4 offsetMatrix = matrixAtFrameX - matrixAtFrame0;

我正在做的是每帧导出骨骼变换矩阵,其中此矩阵是动画的第0帧与第X帧之间的变换的偏移。

  • 我可以减去两个矩阵吗?

  • 结果如何?

1 个答案:

答案 0 :(得分:9)

您需要将第x帧的矩阵与第0帧的矩阵的倒数相乘。

matrixOffset = inverse(matrixAtFrame0) * matrixAtFrameX

这将为您提供帧之间的相对变换和旋转。