我已经加载了.dae
模型,我想在我的场景中使用更多次。此代码适用于网格,但collada.scene
对象不是网格:
var mesh2 = new THREE.Mesh( loadedMesh.geometry, loadedMesh.material );
如何在一些物体之间共享相同的collada模型?
答案 0 :(得分:4)
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 );