gpt4 book ai didi

javascript - 使用 three.js 应用相机位置和旋转

转载 作者:行者123 更新时间:2023-12-05 07:35:12 24 4
gpt4 key购买 nike

在一个场景中,我有一个正在使用 PerspectiveCamera 观察的对象。使用 OrbitControls 我可以围绕对象移动、旋转它、平移它等。

我想做的是将物体以一定 Angular 移动到一定位置,然后获取相机位置和旋转。我稍后会用这些值更新相机。问题是 three.js 没有应用其中的一些值。这是我为获取相机位置、旋转和注视向量所做的操作

console.log("Position", camera.position)
console.log("Rotation", camera.rotation)
console.log("World Direction", camera.getWorldDirection())

一旦我得到向量,将它们写下来并像这样应用它们:

camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 1, 2000);
camera.rotation.set(-3.14, -0.44, -3.14);
camera.position.set(-1067.29, 34.23, 205.82);
camera.lookAt(0.43, -7.10, 0.90)

但问题是,如果我将 pan 与 OrbitControls 一起使用,则旋转和位置会更改为其他值

最佳答案

在 Orbitcontrols 上,您需要在更改相机变换后调用“controls.update()”。

参见 OrbitControlDokumentation 上的代码示例

更新:关注:orbitcontrols seem to overwrite camera transforms

关于javascript - 使用 three.js 应用相机位置和旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49682096/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com