Three.js如何让对象相对于另一个旋转?

时间:2017-12-21 03:39:45

标签: javascript three.js

我有一个相机和一个盒子。我希望相机的旋转就好像它是盒子里的孩子一样,而不是实际为相机做父母。

THREE.js有object.worldToLocal(position),它可以正确地获取相机相对于盒子的位置,但是这个功能当然不适用于euler旋转,所以我正在寻找相当于欧拉或四元数的旋转。

Unity有transform.InverseTransformDirection(vector),我正在寻找类似的东西。

谢谢!

1 个答案:

答案 0 :(得分:0)

好的,我想我明白了!

  var rot = camera.getWorldQuaternion();
  rot.multiply(box.getWorldQuaternion().inverse());
  var euler = new THREE.Euler().setFromQuaternion(rot);