NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

Capitolo 90: Directional Light.

 

La luce direzionale, implementata mediante la classe DirectionalLight, fornisce un tipo di illuminazione direzionale, la cui intensità non si attenua.

I 'fasci' luminosi sono paralleli.

 

DirectionalLight è indicata per simulare, ad esempio, la luce solare.

Ha effetti sui colori diffuso e speculare degli oggetti presenti nel suo bound d'azione e non esclusi mediante Scope.

 

 

Costruttori:

  • DirectionalLight();

  • DirectionalLight(Color3f color, Vector3f direction);

  • DirectionalLight(boolean lightOn, Color3f color, Vector3f direction).

 

 

Il vettore passato come argomento (può essere comunque impostato / recuperato con appositi metodi, elencati nella documentazione di Java 3D) specifica la direzione dei fasci luminosi, considerando come punto di partenza l'origine dell'universo virtuale e come punto d'arrivo quello identificato dal Vector3f; ad ogni modo, l'origine dei fasci luminosi è 'at infinity', cioè ad infinito, non nell'origine.

 

Il vettore, quindi, specifica solo la direzione dei raggi luminosi.

Questo concetto diverrà chiaro osservando l'immagine seguente, che fa riferimento all'esempio LuceDirezionale.

Java 3D Esempio Luce Direzionale DirectionalLight

Nell'esempio, vi è una fonte di luce, di colore CIANO, che 'punta' a (5, 0, 0), che illumina solo parzialmente due sfere.

Soffermiamoci su come vengono colorate le due sfere.

La sfera nell'origine ha colore diffuso VERDE (0, 1, 0), la luce ha colore CIANO (0, 1, 1), dunque il colore visibile della sfera sarà VERDE, eccezion fatta per la regione del riflesso speculare: il colore speculare, che di default `e bianco, verrà reso come CIANO, cioè il colore della fonte luminosa, che ha canale R nullo.

La seconda sfera ha colore diffuso ROSSO (1, 0, 0), dunque non subirà l'influenza della luce sul colore diffuso e verrà resa nera, eccezion fatta per la regione del riflesso speculare, che verrà resa color CIANO, per i motivi esposti precedentemente.

Java 3D Tabella esempio colori luce

 

 

 
Vai all'inizio della pagina