首页 文章

Three.js相机旋转很奇怪

提问于
浏览
1

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

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

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

这是当前的默认设置:

  • 相机位于210向上和

  • 500向后和

  • 246在右边

  • 相机稍微向左旋转

  • 光直接在上方并向各个方向照射

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

试试看:转 camera.rotation.x .

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

那不对,是吗?

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

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

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

PS 由于相机旋转仅围绕其Y轴,因此对象' vertical edges should be vertical in the result as well. In the default set up, they are. Rotating the camera around its X axis, shouldn' t会改变它,但确实如此 . 只绕其Z轴旋转应该改变它(它确实) . 我错了吗?

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

1 回答

相关问题