【发布时间】:2016-11-02 06:56:03
【问题描述】:
你将如何沿着它所面对的轨迹从一个固定点前后移动相机?
我知道有几个控制脚本可以做到这一点,但我需要做一些自定义的事情,我无法分解他们的代码来弄清楚如何隔离上述行为。
我见过this answer,我认为它解决了这个问题并提出了以下代码:
cameraPosition = camera.position
cameraRotation = new THREE.Vector3(camera.rotation._x, camera.rotation._y, camera.rotation._z)
newCamera = new THREE.Vector3().addVectors(cameraPosition, cameraRotation)
camera.position.set(newCamera.x, newCamera.y, newCamera.z)
camera.updateProjectionMatrix()
但这似乎是在绕圈移动相机,而不是前后移动。
任何帮助将不胜感激。谢谢!
【问题讨论】:
-
要向后或向前移动相机,您只需更改相机位置的 z 分量,添加一些增量向量。
-
再次阅读我发布的链接。
-
@WestLangley 你是对的。对不起,我没有早点检查。我假设
camera.translateZ( x )与camera.position.z += x;相同。但是我错了。谢谢!