0

オブジェクトに三人称カメラを実装しようとしています。

私は立方体でそれを試してみましたが、うまくいきました

立方体:

var object, camera;
cubeGeometry = new THREE.CubeGeometry( 50, 50, 50 );
cubeMaterial = new THREE.MeshLambertMaterial({ color: 0xFF0000 });
object = new THREE.Mesh( cubeGeometry, cubeMaterial );
scene.add( object );


camera = new THREE.PerspectiveCamera( 45, ASPECT, 0.2, 10000);
camera.position.z = -300;
camera.position.y = 100;
object.add(camera); 
camera.lookAt(object.position);
renderer.render( scene, camera );

しかし、私のモデルではうまくいきません:

var object, camera;
var loader = new THREE.OBJMTLLoader();
loader.addEventListener('load', function (event){
    object = event.content;
    object.updateMatrix();
    object.scale.set(20,20,20);
    scene.add(object);
}, false);
loader.load( "models/dragster.obj", "models/dragster.mtl" );

    camera = new THREE.PerspectiveCamera( 45, ASPECT, 0.2, 10000);
    object.add(camera);
camera.position.z = -300;
camera.position.y = 100;    
camera.lookAt(object.position);
renderer.render( scene, camera );

カメラをシーンに追加すると機能しますが、オブジェクトに追加すると機能しません

前もって感謝します

4

1 に答える 1

0

あなたの問題は簡単です。これを実行している時点では、OBJ はロードされていません。

object.add( camera );

そのコードをイベントリスナー内に移動してみてください。

于 2013-04-10T00:18:36.863 に答える