three.js を使い始めたばかりで、0,0,0 に固定され、360 度回転できるカメラがあります。カメラの前から始まる 3D オブジェクトがあり、基本的に 3D オブジェクトがカメラの視界から離れないように、カメラの回転に接してカメラの周りを周回したい
カメラのコードはかなり標準的です
phi = TDP.toRadians( 90 - lat );
theta = TDP.toRadians( lon );
camera.target.x = Math.sin( phi ) * Math.cos( theta );
camera.target.y = Math.cos( phi );
camera.target.z = Math.sin( phi ) * Math.sin( theta );
3Dオブジェクトを更新するコードについて
arrow.position.x = - Math.sin( TDP.toRadians( lon ) ) * camera.target.x + arrow.position.x;
arrow.position.z = Math.cos( TDP.toRadians( lon ) ) * camera.target.z + arrow.position.z;
私はちょうどこの方程式で遊んでいて、数学的に行き詰っています. x 軸に沿ったオブジェクトの動きは機能しますが、z 位置はかなりずれています。助けてくれてありがとう。