複数のオブジェクトを含むボードをレンダリングするシーンがあります。オブジェクトの 1 つをクリックし、オブジェクト ピッキングを使用して、オブジェクトを取得し、カメラの位置をアニメートして、オブジェクトの「オーバーヘッド」ビューに配置できます。次に、camera.lookAt メソッドを使用して、カメラがオブジェクトを直接見るように強制できます。
onUpdate メソッド内で camera.lookAt を呼び出すと、最初は選択したオブジェクトを見るために回転する距離が長いため、アニメーションの開始時にクイック ジャンプが発生することに気付きました。後続の camera.lookAt の各呼び出しは比較すると小さく、うまくアニメーション化されています。
// Position the camera to fit
var tween = new TWEEN.Tween(camera.position).to({
x: selectedObject.position.x,
y: selectedObject.position.y,
z: 1
}).easing(TWEEN.Easing.Quadratic.InOut).onUpdate(function() {
camera.lookAt(selectedObject.position);
}).onComplete(function() {
camera.lookAt(selectedObject.position);
}).start();
メソッドをアニメーション化する方法はありますか、または選択したオブジェクトを見るためにカメラのマトリックス値を手動で変換する必要がありますか?
ここに例のフィドルがあります。WebGLRendererを使用していますので、適切なブラウザをご利用ください。
http://jsfiddle.net/fungus1487/SMLwa/
助けてくれてありがとう。