好的,我会尽可能简明扼要地解释。我不太擅长数学,对你来说显而易见的东西对我来说可能就像火箭科学一样难以理解。
我正在使用带有CSS3DRenderer的Three.js创建虚拟画廊空间。
我需要一个第一人称视角,就像FPS游戏一样。
我已经成功地让相机前进、后退、向左和向右移动了。
然而,当我尝试旋转相机时,我得到了这个结果
相机正在旋转它的本地轴,但是我需要的是视口而不是相机旋转,就像下面这样
因此,我需要让相机围绕一个枢轴点/向量旋转,然后使用Object3d.lookAt()重新聚焦。
我知道我可以通过将相机作为另一个对象的子对象来解决问题,然后旋转对象的轴。然而,我宁愿自己做数学计算。
简而言之,我想了解如何围绕另一个向量点旋转一个向量点,并如何在数学上表示这种关系。
我不想使用脚本,例如three.js指针锁定控件,来完成工作。我想亲自动手做实际的数学计算。
任何建议或教程链接都将不胜感激!
我正在使用带有CSS3DRenderer的Three.js创建虚拟画廊空间。
我需要一个第一人称视角,就像FPS游戏一样。
我已经成功地让相机前进、后退、向左和向右移动了。
然而,当我尝试旋转相机时,我得到了这个结果
![pictured here](https://i.imgur.com/FY4N0zK.png)
![pictured here](https://i.imgur.com/ausNJB8.png)
我知道我可以通过将相机作为另一个对象的子对象来解决问题,然后旋转对象的轴。然而,我宁愿自己做数学计算。
简而言之,我想了解如何围绕另一个向量点旋转一个向量点,并如何在数学上表示这种关系。
我不想使用脚本,例如three.js指针锁定控件,来完成工作。我想亲自动手做实际的数学计算。
任何建议或教程链接都将不胜感激!