
In computer grafica, l'equazione di rendering descrive il flusso dell'energia luminosa attraverso una scena. È basata sulla fisica della luce e fornisce risultati teoricamente perfetti, in contrasto con le varie tecniche di rendering, le quali approssimano questo ideale.
Descrizione matematica
[modifica | modifica wikitesto]La base fisica necessaria per l'equazione di rendering è la Legge di conservazione dell'energia. In una particolare posizione e direzione, la luce uscente (Lo) corrisponde alla somma della luce emessa (Le) e di quella riflessa. La luce riflessa, a sua volta, è la somma della luce entrante (Li) da tutte le direzioni, moltiplicata per la superficie riflettente e per l'angolo d'incidenza.
Matematicamente, l'equazione viene espressa nel seguente modo:
Dove:
- è la luce uscente in una particolare posizione e direzione .
- è la luce emessa nella stessa posizione e direzione.
- è una somma infinitesimale calcolata su un emisfero di direzioni entranti.
- è la percentuale di luce riflessa in quella posizione (dalla direzione entrante a quella uscente).
- è la luce entrante da posizione e direzione .
- è l'attenuazione della luce entrante dovuta all'angolo d'incidenza.
Due interessanti caratteristiche sono: la sua linearità (è composta solo di moltiplicazioni e addizioni), e la sua omogeneità spaziale (è la stessa in tutte le posizioni e direzioni). Questo significa che un gran numero di fattorizzazioni ed arrangiamenti sono (facilmente) deducibili per giungere alla soluzione.
L'equazione di rendering è il concetto chiave accademico/teorico nel campo del rendering. È utile come espressione formale astratta degli aspetti impercettibili del rendering. Unendo la luce uscente a quella entrante, attraverso un punto d'interazione, questa equazione rappresenta l'intero trasporto di luce presente nella scena. Tutti i più complessi algoritmi possono essere visti come soluzioni a particolari formulazioni di questa equazione.
Equazione di rendering nello spettro
[modifica | modifica wikitesto]In teoria bisognerebbe risolvere questa equazione per ogni valore di λ, cioè per tutto lo spettro visibile (circa 380–780 nm).
Ma farlo è computazionalmente impossibile in tempo reale: servirebbero centinaia di campioni per pixel.
Per questo, i motori grafici usano un’approssimazione: lo spettro continuo viene ridotto a tre componenti: R, G e B, che rappresentano le bande principali di risposta dei coni della retina.
Quindi, si risolve per tre volte la stessa equazione:
- Uno per il canale rosso.
- Uno per il canale verde.
- Uno per il canale blu.
Il risultato è un vettore di radianza (), che costituisce il colore finale lineare del pixel.
Spesso nell'equazione la lambda viene omessa perché si sottintende che l’equazione va applicata per ciascun canale spettrale (R, G, B).
Voci correlate
[modifica | modifica wikitesto]Collegamenti esterni
[modifica | modifica wikitesto]- (EN) Appunti delle lezioni presi dal corso CS 348B della Stanford University, Computer Graphics: Image Synthesis Techniques








