Javascript 三个JS Collada性能问题
我有以下代码将collada模型加载到THREE.js,我将其克隆到100个,然后将每个模型添加到场景中,一切正常,但加载后性能变得非常差,尽管它们只有100个对象,我计划为大约100个模型加载大约10000个对象Javascript 三个JS Collada性能问题,javascript,three.js,collada,Javascript,Three.js,Collada,我有以下代码将collada模型加载到THREE.js,我将其克隆到100个,然后将每个模型添加到场景中,一切正常,但加载后性能变得非常差,尽管它们只有100个对象,我计划为大约100个模型加载大约10000个对象 var loader=new THREE.ColladaLoader(); loader.options.convertUpAxis = true; var gc=new THREE.Object3D(); loader.load("resources/models/274.
var loader=new THREE.ColladaLoader();
loader.options.convertUpAxis = true;
var gc=new THREE.Object3D();
loader.load("resources/models/274.dae",function(collada){
for(var i=0;i<100;i++){
var c=collada.scene.clone();
c.position.set(i,0,i*Math.random());
scene.add(c);
}
},function(xhr){
var percentComplete = xhr.loaded / xhr.total * 100;
document.getElementById("sload").innerHTML="Scene, Mountain Downloaded: "+ Math.round(percentComplete, 2) + '%';
});
var-loader=new-THREE.ColladaLoader();
loader.options.convertUpAxis=true;
var gc=new THREE.Object3D();
loader.load(“resources/models/274.dae”,函数(collada){
对于(var i=0;我不是THREEJS专家,但问题难道不是您正在添加整个collada场景,而不仅仅是您需要的模型吗?(collada.scene.clone();)?我认为它看起来只包含一棵树,但它包含了很多不需要的信息,可能会把它搞得一团糟。我认为有一个collada模型加载器。试着理解它是如何完成的:脚本:找到一种只导入所需内容的方法。我记得我曾经遇到过类似的问题,最终解析了一个obj文件,读取了一个所有的顶点和面,并从这些顶点创建一个网格。这可能不是最好的方法,但至少你确定你只加载网格。另一件值得一试的事情是将模型导入blender并从中导出。另外,确保在blender之类的工具中将几何体合并到一个网格中。要做到这一点,请遵循我的说明n这个链接。我有一个430个节点的对象,性能很差。我一把它合并成一个网格,它就作为一个网格对象导入到threejs中,性能非常好。