Three.js相机旋转很奇怪

Rud*_*die 1 camera rotation three.js

我刚刚开始使用Three.js.就像现在一样.

玩了一个小时左右,并构建了一个工具,帮助我了解不同元素如何协同工作(相机,光,物体),我发现了一些奇怪的东西.

该工具:http://hotblocks.nl/tests/three/cubes.html

这是当前的默认设置:

  • 相机位于210向上和
  • 500倒退和
  • 246在右边
  • 相机稍微向左旋转
  • 光线直接位于上方并向各个方向照射

如您所见,对象位于视口的最底部.所以我想向下转动相机,所以我可以看到更多相机.

试试看:camera.rotation.x拒绝.

这是有效的,但旋转角度是错误的!而不是相机旋转,它是围绕其Z轴旋转的世界.

那不对,是吗?

Y轴也是错误的.它围绕Y轴旋转世界.

围绕Z轴旋转相机,效果很好:相机旋转,而不是世界.

我做错了吗?或者理解错了?

PS由于相机旋转仅围绕其Y轴,因此对象的垂直边缘也应在结果中垂直.在默认设置中,它们是.围绕X轴旋转相机不应该改变它,但确实如此.只绕其Z轴旋转应该改变它(它确实).我错了吗?

PPS我知道Camera.lookAt( THREE.Vector3 target ),但它改变了相机的旋转,包括其Z轴,这在逻辑上是不必要的.