0

ThreeJSで、カメラ、ライト、飛行機の2つの立方体でシーンを設定しました。立方体は平面上にあり、カメラは緑色の立方体の周りを円を描いて飛んでいます。

私の問題は、カメラアングルが奇妙な振る舞いをすることです。カメラが飛ぶと、カメラはそれ自体を回転させて逆さまの位置になり、次に通常の位置に戻り、これが続きます。lookAt()メソッドを使用しています。何が悪いのかわかりません。私はThreeJSの他のいくつかの例を見て、このコードは機能するはずだと結論付けました。私が間違っていることを教えてもらえますか?カメラを逆さまにせずに緑色の立方体の周りを飛ばしてほしい。ですから、立方体を直接見て、飛ぶときにz軸だけを変更したいと思います。

ここに私のレンダリングループがあります:

function render() {            
    requestAnimationFrame(render);
    var timer = -0.0002 * Date.now();

    camera.position.x =  5 * Math.cos( timer );
    camera.position.y =  5 * Math.sin( timer );

    camera.lookAt( cube.position );

    renderer.render(scene, camera)
}

全体の例を次に示します。http: //jsfiddle.net/szivak009/8S5hq/6/

4

1 に答える 1

5

あなたのコードは大丈夫です。上記の私のコメントとフィドルhttp://jsfiddle.net/8S5hq/9/を参照してください。

up次のようにカメラの方向を変更できます。

camera.up.set( 0, 0, 1 );
于 2012-12-04T12:27:02.040 に答える