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
Javascript 将一个模型多次加载到场景中_Javascript_Three.js - Fatal编程技术网

Javascript 将一个模型多次加载到场景中

Javascript 将一个模型多次加载到场景中,javascript,three.js,Javascript,Three.js,我加载一个模型数百次,如下所示: var loader = new THREE.JSONLoader(); loader.load(model, load_func); var loader = new THREE.JSONLoader(); loader.load(model, load_func); function load_func(){ var mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materia

我加载一个模型数百次,如下所示:

var loader = new THREE.JSONLoader();
loader.load(model, load_func);
var loader = new THREE.JSONLoader();
loader.load(model, load_func);
function load_func(){
  var mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials ) );
  for(var i = 0; i < 100; i++){
    var mesh_new = mesh.clone();
    // Set position here!
    scene.add( mesh_new );
  }
}
load_func正在执行以下操作:

var mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials ) );
scene.add( mesh );
我想知道这是否是将模型多次加载到场景中的正确方法,也许我应该只创建一次网格,然后在不同的位置多次将其添加到场景中


另外,我想知道这是否会对网络流量造成严重影响,如果型号在服务器上,loader.load会下载100次吗?

是的,这不是正确的方式。你应该这样做:

var loader = new THREE.JSONLoader();
loader.load(model, load_func);
var loader = new THREE.JSONLoader();
loader.load(model, load_func);
function load_func(){
  var mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials ) );
  for(var i = 0; i < 100; i++){
    var mesh_new = mesh.clone();
    // Set position here!
    scene.add( mesh_new );
  }
}
var-loader=new THREE.JSONLoader();
loader.load(型号,load_func);
函数load_func(){
var mesh=新的三点网格(几何体,新的三点网格面材质(材质));
对于(变量i=0;i<100;i++){
var mesh_new=mesh.clone();
//在这里设定位置!
场景。添加(新网格);
}
}

所以我的代码也会下载100次模型,而你的不会?