2012-11-13 8 views
5

Ho importato un modello di pallone da calcio (icosaedro troncato) dal frullatore (tramite caricatore JSON) e volevo cambiare i colori del viso sopra clic. I volti sono identificati correttamente Posso cambiare il colore dell'intero modello ma non le facce particolari. Ho scavato un po 'più a fondo e ho scoperto che i colori sono correttamente assegnati a soccerball.geometry.faces [i] ma i nuovi colori delle facce non sono mostrati.Cambiare i colori del viso durante l'esecuzione in Three.js su un modello importato dal frullatore

Ho analizzato tutti i thread simili e ho provato tutte le soluzioni proposte (materiali diversi, dirtyColors, dynamic, colorsNeedUpdate, ecc.) Ma nulla ha aiutato.

questo è come importare il modello:

var loader = new THREE.JSONLoader(); 
var onGeometry = function(geom) { 
soccer = new THREE.Mesh(geom, new THREE.MeshLambertMaterial()); 
soccer.position.set(0, 0, 0); 
soccer.scale.set(2, 2, 2); 
soccer.geometry.dynamic = true; 
soccer.geometry.dirty = true; 
soccer.overdraw = true; 
objects.push(soccer); 
scene.add(soccer); 
}; 

loader.load("models/model.js", onGeometry); 

Can you please help me? grazie in anticipo

risposta

1
soccer.material.vertexColors = THREE.VertexColors ; 

o

soccer.material.vertexColors = THREE.FaceColors; 

Se questo non funziona, allora avrò bisogno di Havre il modello stesso di fare alcuni test.

+0

Grazie mille, ha funzionato! – Victor

Problemi correlati