Il modello di Phong viene proposto come miglioramento del modello di Lambert e considera anche la componente di luce che viene riflessa specularmente (che quindi dipende dalla posizione dell'osservatore). Ai vettori N e L si aggiunge un vettore R che corrisponde alla direzione della luce riflessa della superficie.
Ecco l'equazione del modello di Phong.
I = Ia*Ka + Fatt*Ip [Kd*(N*L)+Ks*((R*V)elevato alla seconda)].
Ia = intensità luminosa della luce ambientale.
Ka = coefficiente di riflessione ambientale (varia da 0 a 1) tipico di ogni materiale.
Fatt = fattore di attenuazione della sorgente di luce considerata (non riguarda la luce ambientale).
Ip = intensità della luce incidente (un fattore che dipende dalla sorgente di luce).
Kd = coefficiente di riflessione diffusa (che varia da 0 a 1) in base al tipo di materiale.
(N*L) = prodotto scalare dei vettori normale e raggio di luce.
Ks = coefficiente di riflessione speculare (varia da 0 a 1).
(R*V) = prodotto scalare tra il vettore raggio speculare (R) e il vettore osservatore (V).
La riflessione speculare si manifesta con un aureola luminosa.
Infine, diciamo che il vantaggio nell'adottare il modello di Lambert consiste nell'ottenere una veloce esecuzione del calcolo delle luce, ma non abbastanza realistica come il modello di Phong che considera le riflessioni speculari.
I MODELLI DI SHADING.
I modelli di shading servono per determinare a quali punti deve essere applicato un dato modello luminoso. Alcuni modelli di shading invocano il modello luminoso per ogni punto dell'immagine, altri usano il modello luminoso per calcolare un numero limitato di punti e ottengono gli altri per interpolazione. Tutto ciò, poiché calcolare l'intensità luminosa per ogni pixel è oneroso dal punto di vista del calcolo. L'insieme di strategie spazia dall'avere un calcolo ripetuto per ogni punto dell'immagine (per ogni pixel o gruppo di pixel) o da un calcolo eseguito a campione con delle scelte oculate con tutti gli altri pixel ottenuti per interpolazione.
I 3 principali modelli di shading sono:
1) Flat shading.
2) Gourad shading.
3) Phong shading.
Il primo modello di shading, e cioè il flat shading per ogni poligono (nell'ipotesi in termini di poligoni) è calcolata una sola intensità luminosa (relativa al punto centrale di ogni poligono). Poi, questa intensità luminosa viene applicata a tutti i punti che appartengono a quel poligono. Chiaramente i risultati sono grezzi anche se utilizzassimo il più sofisticato modello di illuminazione di tipo Phong.
Un miglioramento si può ottenere con lo shading di gourad, e l'obiettivo è quello di cercare di eliminare le discontinuità che si ottengono applicando il modello di shading flat shading. In questo modello si cerca di mediare le discontinuità di colore tra poligoni adiacenti. Invece di calcolare solo l'intensità luminosa del pixel centrale si va a calcolare anche l'intensità dei pixel che stanno ai vertici. Si calcola l'intensità luminosa ai quattro vertici e tutti gli altri punti sono ottenuti per interpolazione. Con tale soluzione si ha un passaggio graduale del colore. L'ultimo modello, quello di phong cerca di migliorare le caratteristiche di continuità, e invece di interpolare i valori delle intensità luminose, interpola i valori dei vettori normali e poi richiama un modello di illuminazione per ogni punto. Cosa dice Phong :
"calcolo il valore della normale nei vertici, e poi applico il modello di illuminazione per tutti i punti, ma non ti obbligo a calcolare anche il valore della normale in quei punti perché la normale è ottenuta da interpolazione di quelle calcolate nei vertici".
Esempi di modelli di shading.
Immagine 22
(Il modello di shading flat shading con modello di illuminazione phong).
Immagine 23
(Il modello di shading gourad con modello di illuminazione phong).
Menu Sezione/Pagina Precedente/Pagina Successiva/Torna alla Homepage
Sito:www.megaoverclock.it