Sì, sarà necessario utilizzare più luci per raggiungere questo obiettivo, simulando la luce riflessa. L'elaborazione della luce riflessa reale non è incorporata (e computazionalmente molto complessa/costosa). Hai una varietà di opzioni.
Una seconda luce direzionale che potrebbe essere sempre nella posizione opposta e direzione del vostro sole.
Una luce dell'emisfero che rimane costante. L'illuminazione dell'emisfero assume un colore del cielo, un colore e un'intensità del terreno e aggiunge un tocco di profondità alla tua illuminazione.
// sky color ground color intensity
hemiLight = new THREE.HemisphereLight(0x0000ff, 0x00ff00, 0.6);
ecco un esempio di lavoro http://mrdoob.github.com/three.js/examples/webgl_lights_hemisphere.html
è possibile utilizzare qualsiasi combinazione di diverse luci ma attenzione c'è un trade off prestazioni.
Vale anche la pena di menzionare l'ombreggiatura a mezzo lambert che viene abilitata impostando la proprietà wrapAround su true nel materiale. Ciò fornisce una riduzione più gradevole al nero che si traduce in un'illuminazione meno dura. Più toni medi e meno neri.
fonte
2013-03-18 15:00:13
Grazie! Impostando wrapAround su true l'ha risolto. Ora non ci sono neri e i colori sono ancora visibili anche se non direttamente nella luce, che era quello che volevo. Ho aggiornato il link originale :) Ho solo bisogno di capire come risolvere il mio problema con le ombre ora. –
wrapAround sembra essere stato rimosso poiché questo commento è stato pubblicato. Come può essere realizzato questo effetto adesso? –