2011-11-26 16 views
5

Come si installano i materiali in THREE.js durante il caricamento dei modelli Collada (dae)?Come configurare i materiali in THREE.js durante il caricamento dei modelli Collada (dae)?

Ho il codice seguente:

new THREE.ColladaLoader().load('models/cylinder.dae', 
function(collada) { 
    var model = collada.scene; 
    model.scale.set(10.0, 10.0, 10.0); 

    // attempt to set a material - doesn't work... 
    collada.dae.materials[0] = new THREE.MeshBasicMaterial({ color: 0xff0000, wireframe: true }); 

    scene.add(model); 
}); 

Grazie per qualsiasi aiuto.

risposta

5
var loader = new THREE.ColladaLoader(); 
loader.options.convertUpAxis = true; 
loader.load('./models/cylinder.dae',function colladaReady(collada) { 

model = collada.scene; 
model_geometry = collada.scene.children[ 0 ].geometry; 
model_material = collada.scene.children[ 0 ].material; 

model.scale.set(10.0, 10.0, 10.0); 
model.updateMatrix(); 
}); 

se hai trovato model_material come 'undefined', allora date un'occhiata a oggetto collada

console.log(collada); 

a volte ci sono bambini all'interno dei bambini, per cui si potrebbe avere a che fare questo:

model_material = collada.scene.children[ 0 ].children[ 0 ].material; 

Dai un'occhiata al modello di collada e quindi modifica di conseguenza.

Problemi correlati