我在3D空间中平移和旋转相机时遇到了一点小问题。在Direct3D9中,摄影机定义为位置、注视和向上轴(作为3d向量)。因此,我存储了相机的旋转和位置,当为新帧定义相机时,我通过旋转旋转了注视向量和上方向轴,并设置了位置。在平移相机时,我采用平移,通过旋转来旋转它,并以此平移相机的位置和观察向量。但是经过一段时间后,注视向量和新的平移不再对齐-也就是说,当平移向量是定义向前的原始注视向量的直接倍数时,相机不再向前移动。我不明白为什么会这样--有什么建议吗?
发布于 2011-01-08 00:22:06
你可能正在经历Gimbal Lock吗?我以前也遇到过这种情况,所以我放弃了向量,转而使用Quaternions。
https://stackoverflow.com/questions/4627604
复制相似问题