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 109: Luci, aspetto e normali delle geometrie.

 

Spesso, quando le geometrie vengono definite vertice a vertice, possono verificarsi problemi di visualizzazione: i colori, e in generale l'aspetto dell'oggetto, sembrano non comportarsi come dovrebbero.

 

Nella maggior parte dei casi ciò è dovuto alle Normali dei vertici della geometria, dunque potrebbe divenire necessario impostarle manualmente.

GeometryArray mette a disposizione, e rende disponibili alle sue sottoclassi, vari metodi per lavorare con le Normali; tra questi, abbiamo setNormals(int index, Vector3f[] normals).

 

 

Tale metodo recupera un array di vettori, ciascuno dei quali è una Normale (definita da 3 valori float), e associa ciascun elemento di questo vettore ad un vertice della geometria che sta invocando il metodo.

 

Il parametro index indica a partire da quale indice (da quale vertice) della geometria effettuare la copia.

Ad esempio, impostando come indice 10 e passando un array di vettori di 30 elementi, le 30 normali verranno associate ai vertici di indice compreso tra 10 e 40 (il 10 incluso, il 40 no).

 

Si noti che in questo modo è possibile definire esplicitamente quale sarà il verso della 'normale positiva' e, dal momento che ne stiamo impostando anche la direzione (ogni normale è un Vector3f), ciò avrà ripercussioni anche sulla resa visiva degli oggetti, in presenza di fonti luminose nella scena e di un Material 'sottostante' impostato per l'oggetto da visualizzare.

 

 
Vai all'inizio della pagina