2013-04-09 46 views
0

我正尝试在我的物体上实现第三人称相机。三个js第三人称相机不能正常工作

从来就与一个立方体试了一下,它工作得很好

立方体:

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); 

当我添加的摄像头它的工作场景,但是当我把它添加到它的对象没有

在此先感谢

+1

说“不起作用”不是很具描述性。 – WestLangley 2013-04-09 19:32:29

+0

in the firefox web-console a get type-error:object is undefined – user2259103 2013-04-09 20:22:00

+0

看看你是否可以自己弄清楚,如果你有问题,那么就提供一个实例并提出一个具体的问题。 – WestLangley 2013-04-09 20:34:29

回答

0

你的问题很简单。在您执行此操作时OBJ尚未加载:

object.add(camera); 

尝试将该代码移动到事件监听器中。