[英]Pivot camera around object on drag
在我的 three.js 場景中,我有一個 object 和{x: 0, y:0 z:-150}
。 我的相機有一個 position {x:0, y:0, z:75);
. 我想要的是用戶可以在object周圍拖動相機,讓用戶一直看着object。
相機需要在向左或向右拖動時跟隨給定的圓圈筆划。
我嘗試使用OrbitControls
和一個pivotPoint
來獲得這個結果:
const controls = new OrbitControls( camera, renderer.domElement );
controls.update();
object.position.set(0, 0, -150);
pivotPoint = new THREE.Object3D();
object.add(pivotPoint);
camera.position.set(0, 0, 75);
camera.lookAt(object.position);
我現在遇到的問題是相機繞着自己旋轉,而不是繞着 object 旋轉。
像這樣嘗試:
camera.position.set(0, 0, 75);
object.position.set(0, 0, -150);
const controls = new OrbitControls(camera, renderer.domElement);
controls.target.copy(object.position);
controls.update();
上面代碼的想法是利用表示焦點的OrbitControls
的目標屬性。 無需在攝像頭object上手動調用lookAt()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.