Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Three.js 3.OBJLoader多个对象_Three.js - Fatal编程技术网

Three.js 3.OBJLoader多个对象

Three.js 3.OBJLoader多个对象,three.js,Three.js,我试图用OBJLoader加载一个对象,然后我想多次放置它(不使用clone() 我试过: var oLoader = new THREE.OBJLoader(); oLoader.load('cube.obj', function(object, materials) { var material2 = new THREE.MeshLambertMaterial({ color: 0x00B74F }); for (var i = 0; i < 5; i++) { obj

我试图用OBJLoader加载一个对象,然后我想多次放置它(不使用clone()

我试过:

var oLoader = new THREE.OBJLoader();
oLoader.load('cube.obj', function(object, materials) {

var material2 = new THREE.MeshLambertMaterial({ color: 0x00B74F });

for (var i = 0; i < 5; i++) { 

    object.traverse( function(child) {
        if (child instanceof THREE.Mesh) {

            // apply custom material
            child.material = material2;

            // enable casting shadows
            // child.castShadow = true;
            // child.receiveShadow = true;
        }
    });

    object.position.x = i * 1;
    object.position.y = i * 80;
    object.position.z = i * 100;
    object.scale.set(1, 1, 1);
    three.scene.add(object);
    console.log(object);
}

});
var-oLoader=new-THREE.OBJLoader();
加载('cube.obj',函数(对象、材质){
var material2=新的三个.MeshLambertMaterial({color:0x00B74F});
对于(var i=0;i<5;i++){
遍历(函数(子对象){
if(三个.Mesh的子实例){
//应用自定义材质
child.material=material2;
//启用投射阴影
//child.castShadow=true;
//child.receiveShadow=true;
}
});
object.position.x=i*1;
object.position.y=i*80;
object.position.z=i*100;
object.scale.set(1,1,1);
三、场景。添加(对象);
console.log(对象);
}
});
我可能需要在
中为
创建一个新网格,但我不知道我必须使用什么

任何帮助都很好


谢谢

创建一个OBJLoader,并在循环中调用它的load函数。但是为什么不想在循环中使用clone?调用OBJLoader的load方法。