2013-09-22 58 views
2

我已经加载了一个.dae模型,我想在我的场景中多用几次。该代码可以使用网格,但collada.scene对象不是网:如何在threejs中克隆collada模型?

var mesh2 = new THREE.Mesh(loadedMesh.geometry, loadedMesh.material); 

这怎么可能,分享一些对象之间的相同collada模型?

回答

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);