如何外推旋转矩阵的值



我使用的是chai3dapi,它使用3x3浮动pt矩阵来存储虚拟世界中的对象方向。

我想在服务器定期更新后,在客户端预测这些方向,这样我就有了一个一致的虚拟图形世界。

我通过发送位置和速度值来预测对象(例如,opengl立方体)的位置。

方位的角速度和位置的速度一样吗?

如果是,我如何从这个3x3矩阵计算角速度并将其用于外推

变换矩阵本质上是另一坐标系中新坐标系的表示。如果你加了一列,你甚至可以把翻译放进去。如果你记得你的微积分和物理学,那么你可能会记得

r = 1/2 a² t + v0 t + r0
v = d/dt r = a + v0
a = d/dt v

要从速度"v"到位置"r",必须积分。在标量的情况下,你将v与时间相乘。但标量乘和矩阵只会缩放它,而不会旋转它。所以你必须做其他事情。如果您想使用矩阵进行此操作,关键字是矩阵幂,即计算矩阵的幂。

假设你有一个微分旋转,d/dt R,那么你可以通过将相应的旋转矩阵无穷小乘以它本身来积分,即取一个幂。

但是还有一种数学上更好的方法可以做到这一点。非常接近于与一个因子相乘的东西。也就是说:使用四元数而不是矩阵来表示方向。事实证明,简单地缩放四元数与乘以它所描述的旋转是一样的。

你应该在谷歌上搜索的关键词是:

  • 四元数
  • 角速度
  • 角度插值
  • 斯勒普http://en.wikipedia.org/wiki/Slerp

相关内容

  • 没有找到相关文章

最新更新