我在4个视口中分割了一个场景,其中包含2个PerspectiveCamera和2个OrthographicCamera。
直播示例:http://stemkoski.github.io/Three.js/Viewports-Quad.html
当我使用OrbitControls作为第一台摄像机时,我必须分配dom元素,这是整个画布场景而不是特定视图。 TransformControls也是如此。
如何在每个相机视口中使用它们?
答案 0 :(得分:0)
您可以为每个视口创建一个OrbitControls实例,但是相同的DomElement,因此:
controls.push(new THREE.OrbitControls( views[0].camera, renderer.domElement ));
controls.push(new THREE.OrbitControls( views[1].camera, renderer.domElement ));
controls.push(new THREE.OrbitControls( views[2].camera, renderer.domElement ));
只添加一个事件监听器就足够了:
controls[0].addEventListener( 'change', draw );
但是我觉得这个解决方案很慢,我仍在寻找更好的选择。