我有一个相机和一个盒子。我想要让相机旋转,就好像它是盒子的子元素一样,而不是真正为相机设置父子关系。
THREE.js 有 object.worldToLocal(position) ,它将正确获取相机相对于盒子的位置,但该函数当然不适用于欧拉旋转,所以我正在寻找欧拉或四元数旋转的等效函数。
Unity有transform.InverseTransformDirection(vector) ,我正在寻找类似的东西。
谢谢!
最佳答案
好的,我想我明白了!
var rot = camera.getWorldQuaternion();
rot.multiply(box.getWorldQuaternion().inverse());
var euler = new THREE.Euler().setFromQuaternion(rot);
关于javascript - Three.js 如何获取一个对象相对于另一个对象的旋转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47917597/