Three.js 结合Object3D组、透视摄影机和FlyControl的意外移动行为
为了编写HUD,我在Object3D中插入了一个摄像头,目的是将HUD元素放置在同一个Object3D中 我现在不更新相机,而是更新HUD,希望更新其中的所有对象。但是,Three.js 结合Object3D组、透视摄影机和FlyControl的意外移动行为,three.js,Three.js,为了编写HUD,我在Object3D中插入了一个摄像头,目的是将HUD元素放置在同一个Object3D中 我现在不更新相机,而是更新HUD,希望更新其中的所有对象。但是, 移动鼠标时,摄影机似乎围绕场景中心旋转 当按下W键(它过去用来向前移动摄影机)时,我现在在场景中心的前面侧移 包括此处描述的压缩线: scene = new THREE.Scene(); hud = new THREE.Object3D(); camera = new THREE.PerspectiveCamera(...
- 移动鼠标时,摄影机似乎围绕场景中心旋转李>
- 当按下W键(它过去用来向前移动摄影机)时,我现在在场景中心的前面侧移
scene = new THREE.Scene();
hud = new THREE.Object3D();
camera = new THREE.PerspectiveCamera(...);
hud.add(camera);
scene.add(hud);
control = new THREE.FlyControls(hud, renderer.domElement);
可以将HUD Object3D添加到摄影机,而不是相反。这应该符合人们的期望
hud = new THREE.Object3D();
camera = new THREE.PerspectiveCamera(...);
camera.add(hud);
scene.add(camera);
control = new THREE.FlyControls(camera, renderer.domElement);
谢谢我现在知道,关键是在向摄影机添加元素后将摄影机读取到场景中!