平稳地将相机旋转从一个坐标系转换到另一个坐标系

时间:2017-07-21 06:39:51

标签: 3d camera rotation interpolation euler-angles

我有一个标准的3D播放器相机,它可以在俯仰和偏转轴上旋转,但不能在滚动轴上旋转。旋转顺序是偏航 - 俯仰 - 滚动。

默认情况下,音高围绕x轴旋转,偏航绕y轴旋转并绕z轴旋转。

我希望玩家能够走到倾斜的表面上,这样相机就会相对于那个表面。因此,例如,玩家可以从地平面移动到90度墙,之后墙应该变成“墙”。新的地面和玩家应该能够相对于墙壁旋转相机,就好像它是地平面一样。所以,让我们说在新的坐标系中,俯仰绕x轴旋转,偏航绕z轴旋转并围绕y轴滚动,因此偏航和滚动基本上改变了他们的角色。

我的问题是,我希望在两个坐标系之间平滑过渡,以便在过渡之前和之后滚动为0。过渡期间围绕滚动轴的旋转很好(但应该是最小的)。

我可以使用欧拉角或四元数。我有什么选择?

0 个答案:

没有答案