2014-01-05 17 views
2

我需要設置場景的初始'lookAt'點,這將是屏幕的中心和控件的旋轉。 如果可能,我寧願設置一個點(或一個對象的位置),而不是旋轉角度。如何設置控件的第一個lookAt /目標

控件是OrbitControl。如果我簡單地控制初始化之前設置的lookAt,中心被恢復到(0,0,0)上的第一用戶交互,至極導致「間隙」 ...

  // camera 
      camera = new THREE.PerspectiveCamera(35, window.innerWidth/window.innerHeight, 0.1, 20000); 
      camera.position.set(0,20,20); 
      camera.lookAt(new THREE.Vector3(0,10,0)); 

      // controls 
      controls = new THREE.OrbitControls(camera); 
      controls.addEventListener('change', render); 

如何設置的初始指出一個正確的方式?

回答

10

嘗試設置控件的目標並移除camera.lookAt調用,即controls.target = new THREE.Vector3(0,10,0);

+0

太棒了!我沒有意識到它可以完成這項工作,完美的工作..非常感謝 – jeum

+2

...然後調用'controls.update();'獲得第一個框架的權利。 – Sphinxxx

5

或者更直接的:controls.target.set(0,10,0);

相關問題