我已经加载了一个.dae模型,我想在我的场景中使用更多次.此代码适用于网格,但collada.scene对象不是网格:
var mesh2 = new THREE.Mesh( loadedMesh.geometry, loadedMesh.material );
如何在一些物体之间共享相同的collada模型呢?
解决方法:
dae场景不是网格,但肯定有网格.
你应该在console.log中使用collada对象,或者在load函数中放置一个断点,并检查你想要的网格在哪里.
给定位于collada.scene.children [0]的网格
在load函数中,将网格存储在某处,比如window.referenceModel
window.referenceModel = collada.scene.children[0];
之后,当您想要克隆此模型时
var refObject = window.referenceModel;
var clone = new THREE.Mesh( refObject.geometry, refObject.material );
// here you can apply transformations, for this clone only
scene.add( clone );