将3D模型添加到现有THREE.Scene()

时间:2013-01-10 11:05:53

标签: three.js webgl

我创建了一个场景,添加了几个盒子,我可以用键盘移动相机就好了。

我想添加一个3D模型。在几个教程中,我看到了类似的内容:

var jsonLoader = new THREE.JSONLoader();
jsonLoader.load( "test.js", function( geometry ) { createScene( geometry) } );


function createScene( geometry ) {

  var mesh = new THREE.Mesh( geometry, new THREE.MeshLambertMaterial({color: 0xbbbbbb}) );
  mesh.scale.set(10, 10, 10);
  mesh.position.y = -350;
  mesh.position.x = -650;
  group.add(mesh);
}

但是对于其他元素,我写了类似的东西:

MovingCube = new THREE.Mesh(MovingCubeGeom, new THREE.MeshFaceMaterial());
MovingCube.position.set(0, 25, 0);
scene.add(MovingCube);

如何在我的场景中从.js转换的.obj添加3D模型?

1 个答案:

答案 0 :(得分:1)

第一个从外部文件加载模型,外部文件包含几何的JSON表示,并在外部文件加载完成后将其作为THREE.Geometry类的实例发送到createScene函数。

第二个几何体已经在变量MovingCubeGeom中。

第二个示例与第一个示例的createScene函数基本相同。

您不需要将obj转换为js,您只需使用THREE.OBJLoader类