C++ 如何基于对象计算位置偏移';s旋转,openGL,C++;

C++ 如何基于对象计算位置偏移';s旋转,openGL,C++;,c++,opengl,camera,C++,Opengl,Camera,我试图根据场景中某个对象的旋转来计算相机的位置偏移,以产生相机固定在对象“后面”的错觉。我可以让摄影机和对象同时转动,但摄影机没有固定在对象后面 相机根据对象的位置移动,但随着对象的旋转,对象的位置永远不会改变,这意味着对象和相机都是静止的。我需要考虑旋转,因为正如你从媒体上看到的,经过一些旋转后,物体不再在视野中。这感觉像是一个乘法顺序问题。您需要先旋转,然后应用偏移,而不是相反方向。是的,我理解,但目前没有偏移。我的问题是我该如何计算它?你总是可以像这样做一个很好的老“看车”,但不是用一个

我试图根据场景中某个对象的旋转来计算相机的位置偏移,以产生相机固定在对象“后面”的错觉。我可以让摄影机和对象同时转动,但摄影机没有固定在对象后面


相机根据对象的位置移动,但随着对象的旋转,对象的位置永远不会改变,这意味着对象和相机都是静止的。我需要考虑旋转,因为正如你从媒体上看到的,经过一些旋转后,物体不再在视野中。

这感觉像是一个乘法顺序问题。您需要先旋转,然后应用偏移,而不是相反方向。

是的,我理解,但目前没有偏移。我的问题是我该如何计算它?你总是可以像这样做一个很好的老“看车”,但不是用一个固定的摄像机位置来表示你的摄像机xyz,而是用car.xyz-offsetScalar*directionOfTheCarUnitVector.xyz,抽象地说,当然这就是我现在使用的,然而,这并没有给我偏移量,所以我可以根据汽车的旋转将相机移到汽车后面