1

誰かがボタンをクリックしてカメラをオブジェクトの周りに移動しようとしています。しかし、オブジェクトを移動したくありません(中央に配置する必要があります)。

私は持っています:

およびjs関数

function MoveUp()
{
    camera.position.y -=50;
}
function MoveDown()
{
    camera.position.y +=50;
}

しかし、これはボタンをクリックするとオブジェクトを上下に動かしています。カメラを周りに動かすだけの可能性はありますか? 私のオブジェクトは立方体だけです..例:

var geometry = new THREE.CubeGeometry( 50, 50, 50 );
        var material = new THREE.MeshFaceMaterial( [
        new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( 'drvo.jpg' ) } ),
        new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( 'drvo.jpg' ) } ),
        new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( 'drvo.jpg' ) } ),
        new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( 'beton.jpg' ) } ),
        new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( 'beton.jpg' ) } ),
        new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( 'beton.jpg' ) } )
    ] );

    cube = new THREE.Mesh( geometry, material );
    cube.position.z = 450;
    scene.add(cube);
4

2 に答える 2

1

カメラの向きを維持しながら、カメラの位置を変更しています。キューブを指すようにカメラの向きを変更したいと思います(実際には、中央に配置します)。カメラを動かしたら、camera.lookAt(cube.position);これを MoveUp と MoveDown の最後にしてください。

于 2013-02-07T12:56:52.253 に答える
1

three.js/examples/js/controls/RollControls.js の RollControls.js と、2 つ上のディレクトリの例を見てください。コントロールがあるので、自分でやろうとするのはなぜですか。

于 2013-02-07T13:30:32.223 に答える