我正在試驗threeJS,並且我已經定位了一個相機並查看了一個場景的原點(0 ,0,0)。我想將攝像機圍繞y軸以設定的距離(半徑)圍繞一圈移動,同時保持對原點的關注,但我不確定如何設置方程。目前,我只是旋轉對象本身,但我想要旋轉相機。這裏是我的代碼,移動網:javascript/threejs - 圍繞中心y軸(在3D空間中)圍繞一個圓移動對象的方程
function checkRotation(){
if (keyboard.pressed("left")){
mesh.rotation.y += .05;
}
if (keyboard.pressed("right")){
mesh.rotation.y -= .05;
}
}
這裏將是某種例如移動相機的:
camera.position.x = ??? (一些方程移動它的x位置) camera.position.z = ??? (一些方程移動它的z位置) camera.lookAt(mesh.position);
任何幫助,你可以提供將是偉大的。謝謝!
我不知道JavaScript或threeJS,但方程很簡單:x'= cos(t)x - sin(t)y ,y'= sin(t)x + cos(t)y。 – Beta 2012-04-26 21:59:10
是的 - 我想我正在努力的是時間問題。我需要根據以前的x和z值來增加,而不是時間的函數。我有一些工作要說: – mheavers 2012-04-26 22:42:31
timer = Date.now()* 0.0005; camera.position.x =((Math.cos(timer)* 5)* 5); camera.position.z =((Math.sin(timer)* 5)* 5); - 但這意味着如果他們停止按下按鈕,下一次他們擊中它時會跳轉 – mheavers 2012-04-26 22:42:55