Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi...

75
Shading Rendering IUAV – dCP – corso Disegno Digitale Camillo Trevisan

Transcript of Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi...

Page 1: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Shading

Rendering

IUAV – dCP – corso Disegno Digitale

Camillo Trevisan

Page 2: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Modelli di illuminazione

Obiettivo: non tanto simulare il vero comportamento della luce, ma piuttosto riprodurre realisticamente l’effetto che la luce ha sugli oggetti della scena.

Il nostro occhio è sensibile anche a pochissimi fotoni e si adatta rapidamente a condizioni di luce molto diverse tra loro, anche se presenti contemporaneamente nella stessa scena.

Nessuna tecnologia può, nemmeno lontanamente, avvicinarsi alla percezione umana.

IUAV – dCP – corso Disegno digitale 2013-14 2

Page 3: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Modelli di illuminazione

Per ‘mettere in luce’ le varie parti degli oggetti, individuare le ombre proprie e portate, dare profondità alla scena, è necessario usare un modello di illuminazione: un modello matematico che descrive, in modo più o meno semplificato, l’interazione tra la luce e gli oggetti presenti nella scena. L’illuminazione complessiva è data dalla somma di tre componenti di luce: Ambiente+Diffusa+Riflessa.L’aspetto più critico è la resa della profondità: questa è, in realtà, un’illusione ottica.

IUAV – dCP – corso Disegno digitale 2013-14 3

Page 4: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Luci

Esistono vari tipi di luci:

• Direzionale (direction light)

• Puntiforme (point light)

• Spot (spot light)

• Area (area light)

• Volumetrica (volume light)

• Ambientale (ambient light)

Queste possono essere ricondotte a due categorie di modelli di

illuminazione: i modelli locali e i modelli globali.

I primi descrivono in modo semplificato luci e interazioni di

queste con gli oggetti in scena; i secondi considerano in modo

più accurato le interazioni, comprendendo molti fenomeni

trascurati dai primi modelli.

IUAV – dCP – corso Disegno digitale 2013-14 4

Page 5: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 5

Assorbimento della luce che colpisce una superficieAngolo di riflessione uguale all’angolo di incidenza (rispetto alla normale alla superficie)

Page 6: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 6

Riflessione diffusa della luce

Page 7: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Shading

Nella computer grafica, lo shading si riferisce al processo di alterare un colore di riferimento basandosi sull'angolo d'incidenza della luce e sulla distanza dalla sorgente, per raggiungere un effetto realistico.Lo shading è uno dei passi presenti nel processo di rendering e modifica il colore delle facce del modello tridimensionale basandosi anche sull'angolo formato dalla superficie rispetto al sole o ad altre sorgenti di luce.

IUAV – dCP – corso Disegno digitale 2013-14 7

Page 8: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Shading

Teoricamente, due superfici parallele sono illuminate in modo identico da una sorgente posta a distanza ‘infinita’, come il sole. Anche se una delle due superfici è più distante dai nostri occhi, l’illuminazione sembra identica. Molti algoritmi di shading e rendering implementano il Falloff che produce immagini che sembrano maggiormente realistiche senza la necessità di aggiungere altre luci per ottenere lo stesso effetto. L’algoritmo fa sì che le facce più distanti dall’osservatore appaiano più scure delle vicine, pur se parallele tra loro.

IUAV – dCP – corso Disegno digitale 2013-14 8

Page 9: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Equazione di rendering

Per produrre una rappresentazione efficace dell'immagine, è necessario simulare la fisica della luce. Il modello matematico più astratto del comportamento della luce è l'equazione di rendering, basata sulla legge di conservazione dell'energia. Essa è un'equazione integrale, che calcola la luce in una certa posizione come la luce emessa in quella posizione sommata all'integrale della luce riflessa da tutti gli oggetti della scena che colpisce quel punto. Questa equazione infinita non può essere risolta con algoritmi finiti, quindi necessita di un’approssimazione.

IUAV – dCP – corso Disegno digitale 2013-14 9

Page 10: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

L’equazione di rendering descrive il flusso di energia luminosa di una scena. E’ basata sulla fisica della luce e pertanto è teoricamente ‘perfetta’. I vari ‘motori di rendering’ approssimano questa equazione in forma più o meno complessa mediante vari ‘cortocircuiti’ e semplificazioni. La base fisica è la legge di conservazione dell’energia, vale a dire che, sebbene possa essere trasformata e convertita da una forma all’altra, la quantità totale di energia di un sistema isolato è una costante, ovvero il suo valore si mantiene immutato al passare del tempo.In una particolare posizione e direzione, la luce uscente (Lo) corrisponde alla somma della luce emessa (Le) e di quella riflessa (Lr). La luce riflessa è la somma della luce entrante (Li) da tutte le direzioni, moltiplicata per la superficie riflettente e per l’angolo di 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).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.

IUAV – dCP – corso Disegno digitale 2013-14 10

Page 11: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 11

In una particolare posizione e direzione, la luce uscente (Lo) corrisponde alla somma della luce emessa (Le) e di quella riflessa. La luce riflessa è la somma della luce entrante (Li) da tutte le direzioni, moltiplicata per la superficie riflettente e per l’angolo di incidenza.

Page 12: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 12

Page 13: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

I modelli di illuminazione più semplici considerano solo la luce che viaggia direttamente da una sorgente luminosa ad un oggetto: questa è chiamata illuminazione diretta.

Il modo in cui la luce viene riflessa dall'oggetto può essere descritto da una funzione matematica, chiamata "funzione di distribuzione della riflessione bidirezionale" (bidirectional

reflectance distribution function, BRDF), che tiene conto delle caratteristiche del materiale illuminato. La maggior parte dei sistemi di rendering semplifica ulteriormente e calcola l'illuminazione diretta come la somma di due componenti: diffusa e speculare. La componente diffusa, o Lambertiana, corrisponde alla luce che viene diffusa dall'oggetto in tutte le direzioni, quella speculare alla luce che si riflette sulla superficie dell'oggetto come su uno specchio. Il modello di riflessione di Phong aggiunge una terza componente, ambientale, che fornisce una simulazione semplice dell'illuminazione indiretta.

IUAV – dCP – corso Disegno digitale 2013-14 13

Page 14: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Con il termine bidirectional reflectance distribution function (BRDF) si intende una misura della distribuzione della riflettanza (la proporzione di luce incidente che una data superficie è in grado di riflettere). È una funzione a quattro dimensioni che definisce quanta luce è riflessa su una superficie opaca. La funzione considera la direzione della luce che arriva wie quella che esce wo, entrambe rispetto alla

normale alla superficie N. Questa funzione ritorna il rapporto tra la radianza (quantità di luce emessa, riflessa o trasmessa da una superficie di area unitaria) riflessa esistente lungo wo e l’irradianza (o illuminanza, è la fluenza di

radiazione elettromagnetica, ovvero la densità di corrente termica trasmessa per irraggiamento) incidente sulla superficie dalla direzionewi. Da notare che ogni direzione wè parametrizzata da due angoli: un azimuth e uno

zenith (per questo ha quattro dimensioni).

IUAV – dCP – corso Disegno digitale 2013-14 14

Page 15: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Modello di riflessione di Phong

Il modello di riflessione di Phong può essere visto come una semplificazione della più generica equazione di rendering, con il vantaggio di semplificare il calcolo del colore di un punto della superficie:- È un modello di riflessione locale, ovvero non considera riflessioni di secondo ordine, a differenza di quanto fatto dal ray tracing e dal radiosity. Al fine di compensare la perdita di parte della luce riflessa, un'ulteriore luce ambiente viene aggiunta alla scena.- Divide la riflessione in tre componenti: riflessione speculare, riflessione diffusiva e riflessione d'ambiente.

IUAV – dCP – corso Disegno digitale 2013-14 15

Page 16: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Rappresentazione del modello di riflessione di Phong

In questa immagine, i colori "ambiente" e "diffuso" sono gli stessi. Da notare che l'intensità della componente diffusiva varia al variare della direzione della superficie, mentre la luce ambiente è costante. Il colore speculare è bianco, e riflette quasi tutta la luce entrante, ma solo in un limitato fascio di direzioni.

IUAV – dCP – corso Disegno digitale 2013-14 16

Page 17: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Definiamo per prima cosa, per ogni sorgente luminosa, le componenti is e id, che sono rispettivamente le intensità (spesso misurate in RGB) delle componenti speculare e diffusiva della luce. Una costante ia controlla la luce ambiente e viene calcolata come somma dei contributi forniti dalle varie sorgenti. Se definiamo, per ogni materiale:ks: costante di riflessione speculare, la percentuale riflessa di luce entrante;kd: costante di riflessione diffusiva, la percentuale di luce entrante che viene diffusa; ka: costante di riflessione d'ambiente, percentuale di riflessione della luce ambiente presente in ogni punto della scena;α: costante di lucentezza del materiale in questione, che decide in quale modo la luce viene riflessa.Definiamo inoltre lights come insieme di tutte le sorgenti di luce, N è la normale in questo punto, L è il vettore verso il punto luce considerato, R è la direzione di un raggio perfettamente riflesso (rappresentato con un vettore) e V è la direzione verso chi guarda (ad esempio una camera).Il valore di shading per ogni punto della superficie Ip viene così calcolato:

IUAV – dCP – corso Disegno digitale 2013-14 17

Page 18: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 18

Page 19: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Il termine diffusivo non utilizza la direzione V (direzione verso la

camera), dal momento che è costante in tutte le direzioni, inclusa la

direzione della camera. Il termine speculare è grande se il vettore R

(direzione raggio riflesso) è quasi allineato con V, valore ottenuto

misurando il coseno dell'angolo formato tra di essi, ovvero il prodotto

scalare dei vettori R e V. Quando α è grande, la superficie si presenta

simile a uno specchio e la dimensione della riflessione sarà minima

grazie all'alto valore del coseno che tende rapidamente a zero se i due

vettori non sono allineati.

Quando i colori sono rappresentati con valori RGB, questa equazione

viene calcolata separatamente per ogni valore della terna.

Quello di Phong è un modello di riflessione empirico, non basato sulla

descrizione fisica dell'interazione di luce, ma piuttosto

sull'osservazione informale. Phong osservò che le superfici altamente

riflettenti creavano un riflesso piccolo, mentre l'intensità di quelle

opache diminuiva in maniera più graduata.

IUAV – dCP – corso Disegno digitale 2013-14 19

Page 20: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Flat, Gouraud e Phong shading

Il flat shading è la tecnica base usata nello shading di oggetti: colora ciascun poligono in relazione all’angolo di incidenza della luce. Naturalmente evidenzia tutte le sfaccettature dell’oggetto.

Il Gouraud shading, che prende il nome da Henri Gouraud, serve per ottenere un graduato cambiamento di colore su superfici a basso numero di poligoni (low-polygon) senza dover ricorrere alla pesantezza computazionale del calcolo pixel per pixel. Gouraud pubblicò questa ricerca per la prima volta nel 1971.Il principio su cui si basa la tecnica di Gouraud è il seguente: viene fatta una stima della normale in ogni vertice di un modello 3D calcolando la media delle normali dei poligoni vi convergono. Partendo da queste stime si può utilizzare il modello di riflessione di Phong per calcolare l'intensità del colore nei vertici. Il colore dei vari pixel può essere trovato interpolando i valori calcolati nei vertici.

IUAV – dCP – corso Disegno digitale 2013-14 20

Page 21: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Gouraud shading

I punti di forza e di debolezza del Gouraud shading risiedono entrambi nell'uso che esso fa dell'interpolazione.Interpolare i colori di vari pixel (conoscendone con precisione solo pochi) alleggerisce il calcolo rispetto a modelli più raffinati (come il Phong shading). Purtroppo, però, gli effetti di luce localizzati (come punti di riflettenza, ad esempio la riflessione di una sorgente di luce su di una sfera) non verranno renderizzati correttamente: se l'effetto è collocato al centro del poligono, senza raggiungere i vertici, non apparirà come risultato del rendering di Gouraud; se lo stesso effetto è collocato su di un vertice, verrà mostrato correttamente, ma verrà replicato in modo innaturale sui poligoni adiacenti. Il problema è facilmente riconoscibile se si renderizza una scena nella quale la sorgente di luce si muove, spostando la riflessione presente sull'oggetto in questione. Con il Gouraud shading si vedrebbe la riflessione allargarsi e stringersi continuamente, raggiungendo i picchi d'intensità nei vertici e sparendo al centro dei poligoni.

IUAV – dCP – corso Disegno digitale 2013-14 21

Page 22: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Esempio di shading Gouroud

A sinistra. Sfera trattata con il Gouraud shading: da notare la scarsa accuratezza lungo i lati dei poligoni.A destra. La stessa sfera riprodotta con un alto numero di poligoni.

IUAV – dCP – corso Disegno digitale 2013-14 22

Page 23: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Phong shading

La riflessione di Phong è un modello di illuminazione locale che può conferire un certo grado di realismo agli oggetti tridimensionali attraverso la combinazione di tre elementi: diffusione, riflessione e luce ambiente per ogni punto della superficie. Come metodo di rendering, il Phong Shading può essere visto come un miglioramento del Gouraud shading.Il problema principale del Gouraud Shading si ha quando la riflessione è vicina al centro di un grande triangolo. In pratica la riflessione non verrà mostrata, a causa dell'interpolazione di colori tra i vertici. Questo problema è stato corretto dal Phong shading.

IUAV – dCP – corso Disegno digitale 2013-14 23

Page 24: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Phong shading

Siano dati tre vertici in due dimensioni (tre punti non allineati né coincidenti che definiscono un piano nello spazio e i tre vertici di un triangolo appartenente al piano), V1, V2 e V3, e le normali alle superfici per ogni vertice: N1, N2 e N3. Supponiamo che siano tutte di lunghezza unitaria (versori). A differenza del Gouraud shading, che interpola il colore lungo il triangolo, nel metodo di Phong si interpola linearmente la normale N lungo la superficie del triangolo, partendo dalle tre normali date. Questo calcolo viene effettuato per ogni pixel del triangolo.In ogni pixel si normalizza N (si fa in modo che N abbia valore unitario) e lo si usa all'interno del modello di riflessione di Phong per ottenere il colore da assegnare al pixel. E’ dunque necessario ricalcolare continuamente l’angolo tra il Punto di Vista e il fascio di luce riflessa (R • V, prodotto scalare).

IUAV – dCP – corso Disegno digitale 2013-14 24

Page 25: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Blinn-Phong shadingCome appena visto, nel Phong shading è necessario calcolare per ciascuna faccia l’angolo tra il Punto di Vista (V) e il fascio di luce riflessa (R). Se invece si calcola il vettore H bisettore dell’angolo tra V e L, possiamo sostituire all’angolo tra R e V quello tra N e H, dove N è la normale alla superficie. Questo angolo è la metà dell’altro se V, L, N, R giacciono sullo stesso piano, ma la relazione si mantiene, sia pure approssimativamente, anche quando i vettori non giacciono sullo stesso piano, soprattutto se gli angoli sono piccoli. Il vantaggio del metodo consiste nel non dover calcolare l’angolo per ogni faccia ma solo quello per ciascuna sorgente di luce, se V e L sono all’infinito.

IUAV – dCP – corso Disegno digitale 2013-14 25

Page 26: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Blinn-Phong modificatoUsare l’angolo bisettore pone diversi problemi. Anzitutto di ordine matematico: distrugge la reciprocità di Helmholtz, vale a dire che non è più possibile ricostruire a ritroso il percorso dei raggi riflessi. In secondo luogo transizioni di luce molto dure tra pixel molto luminosi e molto scuri, con viste radenti, creano silhouette. Nel tempo sono state messe a punto molte varianti di questo algoritmo.

IUAV – dCP – corso Disegno digitale 2013-14 26

Page 27: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Oren-NayarL’algoritmo di Oren-Nayar si utilizza per superfici molto rugose, e dunque non Lambertiane (appartiene alla famiglia delle microfacet models, che trattano le superfici come un insieme di facce microscopiche). Un insieme numeroso di microfacce che descrivono superfici rugose viola la legge di Lambert, anzitutto perché, al variare dell’angolo di vista, l’insieme delle facce che ‘vedono’ il PV sotto il medesimo angolo si modifica continuamente e fortemente e pertanto l’apparenza della superficie è in funzione del Punto di Vista.

IUAV – dCP – corso Disegno digitale 2013-14 27

Geometria delle microfacce.Esempio di superficie composta da microfacce. Direzione della normale A (con V normale alla macrosuperficie). Interazione tra le microfacce: interriflessioni, mascherature, shadowing.

Page 28: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Oren-NayarSi assume che la superficie sia composta da cavità a V simmetriche e regolari, più piccole di un pixel, una volta proiettate. Ciascuna cavità è composta da due facce piane. La rugosità della superficie è data da una funzione di probabilità di distribuzione delle inclinazioni delle facce (in particolare si usa spesso una distribuzione Gaussiana). Ciascuna faccia usa una funzione di riflessione Lambertiana. Naturalmente minore è l’inclinazione e maggiore è la ‘vicinanza’ della superficie complessiva a quella Lambertiana e viceversa.

IUAV – dCP – corso Disegno digitale 2013-14 28

Page 29: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Illuminazione globale

Gli oggetti sono in realtà bombardati da moltissime sorgenti luminose

indirette: la luce rimbalza da un oggetto all'altro finché non perde

energia. L'illuminazione globale indaga questo comportamento della

radiazione luminosa.

Come l'illuminazione diretta, essa comprende una componente

diffusa ed una speculare.

La riflessione reciproca diffusa riguarda la luce che colpisce un oggetto

dopo averne già colpito un altro. Dal momento che questo ha

assorbito una data lunghezza d'onda dello spettro della luce che lo ha

colpito, la luce che respinge ha un colore diverso da quella da cui è

illuminato.

La riflessione reciproca speculare si manifesta generalmente con

caustiche (ovvero con la concentrazione della radiazione luminosa in

un punto da parte di una superficie speculare, come quella ottenibile

dalla luce solare con una lente).

IUAV – dCP – corso Disegno digitale 2013-14 29

Page 30: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Algoritmi di illuminazione globale

Gli algoritmi di Illuminazione globale vengono comunemente usati in

computer grafica 3D per aggiungere un'illuminazione realistica alle

scene. Alcuni di questi algoritmi tengono conto non solo della luce

ricevuta direttamente da una sorgente di luce (illuminazione diretta),

ma anche di quella riflessa, diffusa, o rifratta da altre superfici

(illuminazione indiretta). Le immagini renderizzate con l'uso di

algoritmi di illuminazione globale, spesso appaiono più realistiche

rispetto a quelle che utilizzano solo l'illuminazione diretta. La loro

computazione, però, è molto più lenta.

Un approccio comune consiste nel calcolare l'illuminazione globale di

una scena e memorizzare questa informazione in senso geometrico,

ad esempio con la radiosity. I dati così salvati, possono essere usati per

creare immagini da differenti punti di vista, generando così dei

percorsi animati (walkthrough) senza dover ricalcolare continuamente

l'illuminazione.

IUAV – dCP – corso Disegno digitale 2013-14 30

Page 31: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Algoritmi di illuminazione globale

Radiosity, ray tracing, path tracing, ambient occlusion, e photon

mapping sono esempi di algoritmi usati nel campo dell'illuminazione

globale; alcuni possono essere combinati tra loro per ottenere risultati

più rapidi, ma comunque accurati.

Questi algoritmi modellano l'inter-riflessione diffusa, una parte molto

importante dell'illuminazione globale. Buona parte di questi (esclusa la

radiosity) modellano anche la riflessione speculare, il che li rende più

precisi nella risoluzione dell'equazione di luce e fornisce un effetto più

realistico alla scena.

Gli algoritmi utilizzati per calcolare la distribuzione dell'energia

luminosa tra superfici di una scena, sono strettamente correlati con le

simulazioni di trasferimento di calore, risolte in ingegneria con l'uso

del metodo degli elementi finiti.

IUAV – dCP – corso Disegno digitale 2013-14 31

Page 32: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Il metodo degli Elementi Finiti

Il metodo degli ‘elementi finiti’ è stato messo a punto per risolvere

problemi di analisi strutturale e si applica a corpi che possono essere

suddivisi in un gran numero di elementi di forma definita ed

elementare e di dimensioni molto piccole rispetto al corpo stesso.

Applicando lo stesso algoritmo a tutti gli elementi e risolvendo il

problema per ciascun elemento, si giunge così alla soluzione del

problema applicato all’intero corpo. Ad esempio, dovendo calcolare, al

variare della temperatura, la dilatazione di un oggetto metallico di

forma complessa e anche composto di varie parti in leghe diverse tra

loro e con temperature che variano nello spazio e nel tempo, lo si

potrà suddividere in moltissimi piccoli cubi per i quali è semplice

risolvere il problema del calcolo della dilatazione nel tempo.

Sommando tra di loro gli effetti si troverà la soluzione complessiva.

Naturalmente, più numerosi saranno i piccoli cubi che ‘approssimano’

l’oggetto, migliore sarà anche l’accuratezza dell’analisi.

IUAV – dCP – corso Disegno digitale 2013-14 32

Page 33: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray casting

Il Ray casting usa il test di intersezione tra una semiretta e una superficie per risolvere vari problemi di computer grafica.Può riferirsi a:

• Un problema generale per determinare il primo oggetto intersecato da un raggio.

• Una tecnica per la rimozione delle superfici nascoste.

• Una variante non ricorsiva del Ray tracing che considera solo il raggio primario

• Un metodo diretto di volume rendering, il volume ray casting.

IUAV – dCP – corso Disegno digitale 2013-14 33

Page 34: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray casting

Il Ray casting può essere considerato una versione veloce del Ray

tracing, poiché non calcola la nuova direzione che un raggio di luce

può assumere dopo aver intersecato una superficie nel suo viaggio

verso l’occhio dell’osservatore. Questo comporta l’impossibilità di

calcolare accuratamente le riflessioni, le rifrazioni e il naturale falloff

delle ombre. L’algoritmo originale (Arthur Appel, 1968) consiste nel

lanciare raggi dal punto di vista, uno al centro di ciascun pixel

dell’immagine da creare, per trovare il primo oggetto che lo interseca.

Usando le proprietà del materiale e gli effetti di luce della scena,

questo algoritmo può determinare lo shading degli oggetti in scena,

usando un metodo di shading tradizionale.

Un importante vantaggio del Ray casting è la sua capacità di trattare

facilmente oggetti matematici non piani per i quali è semplice definire

l’intersezione con una retta: ad esempio, sfere, coni, cilindri.

IUAV – dCP – corso Disegno digitale 2013-14 34

Page 35: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Volume Ray casting

Volume ray casting (anche noto come volumetric ray casting,

volumetric ray tracing, volume ray marching) è una tecnica di

rendering image-based, poiché calcola immagini 2D da una scena 3D.

Comprende quattro passaggi:

1. Ray casting: per ciascun pixel è lanciato un raggio dal PV.

2. Sampling: si definiscono dei sampling points lungo la parte del

raggio che si trova all’interno del volume.

IUAV – dCP – corso Disegno digitale 2013-14 35

Page 36: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Volume Ray casting

3. Shading: per ciascun campione è calcolato il gradiente (vale a dire

l’orientamento della superficie entro il volume). I campioni sono

quindi sottoposti a shading, in relazione all’orientamento della loro

superficie rispetto alle luci di scena.

4. Compositing: i colori dei campioni, ottenuti a partire dall’equazione

di rendering, sono composti e miscelati tra loro, a partire dal fondo,

determinando il colore finale del pixel in elaborazione.

IUAV – dCP – corso Disegno digitale 2013-14 36

Page 37: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing

Come per il Ray casting la tecnica del Ray tracing (Turner Whitted, 1979) segue i raggi partendo dal Punto di Vista. Lavora tracciando, all’inverso, il percorso che potrebbe aver seguito un raggio di luce prima di giungere al PV.Mentre la scena è attraversata dal raggio, sono calcolate la riflessione, la rifrazione e l’assorbimento nel punto in cui il raggio stesso colpisce un qualsiasi oggetto. I precedenti algoritmi lanciavano anch’essi il raggio dall'occhio verso la scena, ma i raggi non venivano più seguiti. Quando un raggio colpisce una superficie, può generare fino a tre nuovi tipi di raggio: riflessione, rifrazione e ombra. Un raggio riflesso continua nella direzione della riflessione a specchio su di una superficie lucida. A questo punto interagisce con altri oggetti della scena; il primo oggetto che colpisce sarà quello visto nel riflesso presente sull'oggetto originario. Il raggio rifratto viaggia attraverso il materiale trasparente in modo simile, con l'aggiunta che può entrare o uscire da un materiale.

IUAV – dCP – corso Disegno digitale 2013-14 37

Page 38: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing

Per evitare di tracciare tutti i raggi presenti in una scena, un ‘raggio ombra’ viene usato per testare se la superficie sia visibile a una luce. Un raggio colpisce una superficie in un qualche punto. Se questo punto "vede" la luce, il raggio viene seguito fino alla sorgente. Se durante il tragitto si incontra un oggetto opaco, la superficie è in ombra e quella sorgente non contribuisce al calcolo del colore.

IUAV – dCP – corso Disegno digitale 2013-14 38

Page 39: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing

Svantaggi. Un grave svantaggio è dato dalle performance. Il raytracing

itera tutto il procedimento per ogni nuovo pixel, trattando ogni raggio

in modo separato. Questa separazione offre vantaggi, ad esempio la

possibilità di spedire più raggi del necessario per ottenere

l'antialiasing e migliorare la qualità dell'immagine. Nonostante

gestisca accuratamente interriflessioni e rifrazioni, il Ray Tracing

tradizionale non è necessariamente realistico. Il vero realismo si

ottiene quando l'equazione di rendering è ben approssimata o

completamente implementata. Il calcolo completo è normalmente

impossibile date le risorse di computazione richieste. Il realismo di

tutti i metodi di rendering, quindi, deve essere valutato in rapporto

all'approssimazione dell'equazione e, nel caso del ray tracing, non è

necessariamente il più realistico. Altri metodi, tra cui il photon

mapping, sono basati sul ray tracing in alcune parti dell'algoritmo, e

danno migliori risultati.

IUAV – dCP – corso Disegno digitale 2013-14 39

Page 40: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Photon mapping

Il photon mapping è in grado di simulare la rifrazione della luce attraverso sostanze trasparenti, ad esempio il vetro o l'acqua, riflessioni reciproche tra oggetti illuminati e alcuni effetti causati da particelle come il fumo o il vapore acqueo. Il photon mapping è stato sviluppato dal ricercatore danese Henrik Wann Jensen.La prima fase consiste nel simulare l'emissione di fotoni (photon tracing, di solito più di 10.000) dalle sorgenti di luce di scena e nel tracciamento, all'interno della scena stessa, di una mappa 3D di fotoni virtuali; la seconda fase consiste nel rendering della scena utilizzando le informazioni contenute nella mappa, precedentemente creata, per stimare la radianza riflessa sulle superfici della scena.Al contrario dei tradizionali algoritmi di rendering permette di calcolare con buona precisione effetti di luce quali caustiche, riflessioni e surface scattering, e pertanto risulta particolarmente utile nella produzione di immagini con elementi in cristallo o metallo o con materiali translucidi.

IUAV – dCP – corso Disegno digitale 2013-14 40

Page 41: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 41

Ray Tracing classico

Photon path

Page 42: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Photon mapping – senza PM – 1000 – 2000 – 6000 fotoni

IUAV – dCP – corso Disegno digitale 2013-14 42

Page 43: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Surface scattering

In fisica la diffusione ottica (dispersione o scattering in inglese) si

riferisce a un'ampia classe di fenomeni nei quali onde o particelle

vengono deflesse (ovvero cambiano traiettoria) a causa della

collisione con altre particelle o onde. La deflessione avviene in

maniera disordinata e in buona misura casuale e per questo la

diffusione si distingue dalla riflessione e dalla rifrazione, che invece

cambiano le traiettorie in maniera regolare e determinata. Sono

considerati processi di scattering solo le interazioni che non

comportino rilevanti cessioni o guadagni di energia.

Un esempio tipico è il colore bianco del latte o della farina o

delle nuvole: in questo caso le particelle del latte o della farina, o le

goccioline d'acqua delle nuvole, diffondono uniformemente tutte le

lunghezze d’onda della luce e, poiché il processo si ripete moltissime

volte all'interno del mezzo, la direzione di provenienza della luce non

è più riconoscibile e il mezzo assume un colore bianco.

IUAV – dCP – corso Disegno digitale 2013-14 43

Page 44: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Caustiche

Le caustiche sono delle entità geometriche formate dalla concentrazione singolare di curve, che modellizzano approssimativamente il comportamento dei raggi luminosi focalizzati da lenti o specchi curvi, che danno luogo a delle zone molto luminose quando incontrano una superficie.

IUAV – dCP – corso Disegno digitale 2013-14 44

Page 45: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 45

Page 46: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

IUAV – dCP – corso Disegno digitale 2013-14 46

Page 47: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

L’algoritmo di Monte Carlo

L’algoritmo di Monte Carlo è un metodo numerico che viene utilizzato

per trovare le soluzioni di problemi matematici che possono avere

molte variabili e che non possono essere risolti facilmente per via

diretta. Il metodo è usato per trarre stime attraverso simulazioni.

Si basa su un algoritmo che genera una serie di numeri che seguono la

distribuzione di probabilità che si suppone abbia il fenomeno da

indagare.

La simulazione Monte Carlo calcola una serie di realizzazioni possibili

del fenomeno in esame, con il peso proprio della probabilità di tale

evenienza, cercando di esplorare in modo denso tutto lo spazio dei

parametri del fenomeno. Una volta calcolato questo campione

casuale, la simulazione esegue delle misure delle grandezze di

interesse su tale campione. La simulazione Monte Carlo è ben

eseguita se il valore medio di queste misure sulle realizzazioni del

sistema converge al valore vero.

IUAV – dCP – corso Disegno digitale 2013-14 47

Page 48: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

L’algoritmo di Monte CarloNon c'è un solo metodo Monte Carlo: il termine descrive invece una classe di approcci

molto utilizzati per una larga categoria di problemi.

Tuttavia, questi approcci tendono a seguire un particolare schema:

• Definire un dominio di possibili dati in input.

• Generare input casuali dal dominio con una certa distribuzione di probabilità

determinate.

• Eseguire un calcolo deterministico utilizzando i dati in ingresso (input).

• Aggregare i risultati dei calcoli singoli nel risultato finale.

Un esempio particolare dell'utilizzo del metodo Monte Carlo è l'impiego del metodo

nell'analisi scacchistica. Negli ultimi anni i più forti programmi scacchistici in

commercio, implementano delle opzioni d'analisi che utilizzano la analisi Monte Carlo.

Per valutare una posizione, si fanno giocare al computer migliaia di partite partendo

dalla posizione da analizzare, facendo eseguire al PC mosse del tutto casuali o pseudo-

casuali (quindi scelte tra le mosse più logiche). La media dei risultati ottenuti in queste

partite è un'indicazione plausibile della mossa migliore.

Esempio del gioco della battaglia navale.

IUAV – dCP – corso Disegno digitale 2013-14 48

Page 49: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ambient occlusionL'ambient occlusion è un metodo di shading che tiene conto dell'attenuazione luminosa in prossimità di volumi occlusi. Diversamente da metodi locali come il Phong shading, l'ambient occlusion è un metodo globale, cioè l'illuminazione di ogni punto è funzione della geometria della scena. Ad ogni modo è un'approssimazione grezza dell'intera illuminazione globale. L'aspetto generato dalla sola ambient occlusion è simile a quello di un oggetto in un giorno nuvoloso.Solitamente l'ambient occlusion viene calcolata tracciando raggi in ogni direzione dalla superficie. I raggi che raggiungono lo sfondo o il "cielo" aumentano la luminosità della superficie, mentre quelli che intercettano un altro oggetto non aggiungono alcuna illuminazione. Di conseguenza i punti circondati da molte altre geometrie vengono renderizzati in ombra, mentre i punti più liberi da ingombri risultano più chiari. Una buona caratteristica di questo metodo di shading è quella di offrire una migliore percezione della forma tridimensionale degli oggetti mostrati.

IUAV – dCP – corso Disegno digitale 2013-14 49

Page 50: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ambient occlusion

IUAV – dCP – corso Disegno digitale 2013-14 50

Page 51: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ambient occlusion

IUAV – dCP – corso Disegno digitale 2013-14 51

Page 52: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ambient occlusion – Texture mapping

IUAV – dCP – corso Disegno digitale 2013-14 52

Page 53: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Texture mapping

IUAV – dCP – corso Disegno digitale 2013-14 53

Page 54: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Texture mapping

IUAV – dCP – corso Disegno digitale 2013-14 54

Per ciascun vertice del triangolo si assegnano le coordinate u,v nello spazio texture. Una texture è di norma definita in coordinate normalizzate [0,1]x[0,1] nello spazio parametrico della texture.

Pertanto si definisce un mapping tra il triangolo e un triangolo della texture.

Ciascun vertice (di ciascun triangolo) ha le sue coordinate u,v nello spazio texture.

Page 55: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Texture mapping

IUAV – dCP – corso Disegno digitale 2013-14 55

Page 56: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Texture mapping

IUAV – dCP – corso Disegno digitale 2013-14 56

Page 57: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Radiosity

Radiosity è una tecnica di illuminazione globale che usa metodi degli

elementi finiti per risolvere l’equazione di rendering in scene

composte da superfici perfettamente diffusive.

Usa un meccanismo indiretto: anziché calcolare i percorsi della luce

dalla fonte alle superfici, verifica quanta luce può ‘vedere’ ciascuna

porzione di superficie.

La radiosity tiene conto solo dei percorsi che partono da

una sorgente e vengono riflessi diffusivamente un certo numero di

volte (anche zero) prima di colpire l'occhio.

Come metodo di rendering, la radiosità venne presentata nel 1984 da

ricercatori della Cornell University (C. Goral, K. E. Torrance, D. P.

Greenberg and B. Battaile) in un articolo intitolato "Modeling the

interaction of light between diffuse surfaces".

IUAV – dCP – corso Disegno digitale 2013-14 57

Page 58: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

RadiosityL'inclusione di calcoli di radiosità nel processo di rendering spesso aggiunge realismo al risultato proprio per il modo con il quale simula il mondo reale. Consideriamo una semplice stanza.L'immagine in alto è stata generata con un normale renderer a illuminazione diretta. Esistono tre tipi di luce nella scena, scelte e collocate nel tentativo di creare la giusta illuminazione: luci spot con ombre (per creare l'illuminazione sul pavimento), luce d'ambiente (senza la quale il resto della stanza sarebbe al buio) e luci omnidirezionali senza ombra (per ridurre la piattezza della luce d'ambiente).L'immagine in basso è stata calcolata con l'uso di un algoritmo di radiosità. C'è una sola sorgente di luce, un'immagine del cielo posta all'esterno della stanza. La differenza è ben visibile. Ombre morbide sono visibili sul pavimento e vari effetti luminosi sono presenti nella stanza. Inoltre, il colore rosso del tappeto viene riflesso sui muri grigi, procurando un effetto realistico. Nessuno di questi effetti è stato creato ad arte, sono tutti frutto dell'algoritmo.

IUAV – dCP – corso Disegno digitale 2013-14 58

Page 59: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Radiosity

La superficie della scena da visualizzare viene divisa in una o più superfici (patch) e l'algoritmo si occupa di una superficie alla volta. Per ogni ‘passata’ dell'algoritmo viene calcolata la luce che una patch riceve dalle altre. Una parte della luce viene considerata assorbita, il resto viene riflesso nella scena per il prossimo passaggio dell'algoritmo.Uno dei comuni metodi per la risoluzione dell'equazione di radiosità viene definita shooting radiosity e risolve in modo iterativo ‘sparando’ (da qui il nome) luce da una superficie a ogni passo dell’algoritmo. Dopo la prima passata saranno illuminati solo gli oggetti che vedono la sorgente di luce. Dopo la seconda, altre superfici riceveranno la luce a causa del rimbalzo di quest'ultima sulle patch già illuminate. La scena acquisisce luminosità ad ogni passo, fino a raggiungere una stabilità, dovuta al quasi totale assorbimento della luce da parte delle patch.

IUAV – dCP – corso Disegno digitale 2013-14 59

Page 60: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Radiosity

Il metodo si fonda sulla base della radiazione termica, visto che consiste nel calcolo

dell'ammontare d'energia trasferito tra superfici. Per poter semplificare il calcolo si

suppone che tutte le superfici siano perfettamente diffusive.

Le superfici vengono solitamente discretizzate in un numero finito di quadrilateri o

triangoli.

Dopo questa frammentazione, l'ammontare dell’energia trasferita può essere

calcolato utilizzando la riflessività conosciuta delle patch, combinata con il fattore

di forma delle due patch.

Quest’ultima quantità, adimensionale, viene calcolata partendo dall'orientamento

delle due patch nello spazio 3D e può essere immaginata come la frazione della

possibile area emittente della prima patch ‘vista’ dalla seconda.

L’equazione è monocromatica e va pertanto ripetuta per ciascun colore primario.

L’algoritmo di base presenta alcuni problemi di visualizzazione, ad esempio sui

bordi degli oggetti, causati da una discretizzazione delle superfici a volte rozza.

Per migliorare la discretizzazione si adottano tecniche di discontinuity meshing

che usano la conoscenza della visibilità reciproca degli oggetti per generare una

discretizzazione più ‘intelligente’.

IUAV – dCP – corso Disegno digitale 2013-14 60

Page 61: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing

IUAV – dCP – corso Disegno digitale 2013-14 61

Page 62: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing + soft shadows

IUAV – dCP – corso Disegno digitale 2013-14 62

Page 63: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing + soft shadows + caustics

IUAV – dCP – corso Disegno digitale 2013-14 63

Page 64: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Ray tracing + soft shadows + caustics + illuminaz. diffusa indiretta

IUAV – dCP – corso Disegno digitale 2013-14 64

Page 65: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheIlluminazione con luce infinita al 100%. Nessuna ombra.

IUAV – dCP – corso Disegno digitale 2013-14 65

Il cubo presenta zone completamente non illuminate. Sembra fluttuare per la mancanza d'ombra riportata sul pavimento. E' evidente la mancanza di punti di riferimento spaziali.

Page 66: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheIlluminazione con luce infinita al 100%. Ombra morbida.

IUAV – dCP – corso Disegno digitale 2013-14 66

Il cubo presenta zone non illuminate. L'ombra morbida colloca il cubo spazialmente nonostante la faccia opposta alla luce diretta sia completamente indistinta.

Page 67: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheIlluminazione con luce infinita al 100%. Ombra netta..

IUAV – dCP – corso Disegno digitale 2013-14 67

Il cubo presenta zone completamente non illuminate. L'ombra netta colloca il cubo spazialmente.

Page 68: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheIlluminazione con luce infinita al 100%. Ombra area.

IUAV – dCP – corso Disegno digitale 2013-14 68

Il cubo presenta zone completamente non illuminate. L'ombra area colloca il cubo spazialmente e consente un maggiore realismo. Senza l'utilizzo di illuminazione globale sarebbe necessario inserire delle fonti di illuminazione aggiuntive per illuminare le zone in ombra.

Page 69: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: IR. Diffusione: 1, Intensità primaria: 100%

.

IUAV – dCP – corso Disegno digitale 2013-14 69

Il cubo risulta ora ben illuminato. Le zone scure sono scomparse. Si nota una leggera ombreggiatura appena sotto il cubo dovuta alla smussatura dello stesso.Come si vede dal risultato, il cielo inserito emette radianza che è moltiplicata dalla Illuminazione Globale verso tutti gli oggetti presenti in scena.

Page 70: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: IR. Diffusione: 2, Int. Prim.: 100%, second. 100%

IUAV – dCP – corso Disegno digitale 2013-14 70

Aumentando la diffusione si aumentano i rimbalzi sulle superfici. Le zone d'ombra vengono schiarite dall'intensità secondaria. L'intensità primaria invece si potrà regolare per aumentare la luminosità delle superfici esposte direttamente alla fonte luminosa. Più si aumenta la diffusione e più l'immagine diverrà chiara

Page 71: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: QMC. Diffusione: 1, Int. Prim.: 100%. 64 campioni

IUAV – dCP – corso Disegno digitale 2013-14 71

Il metodo QMC è più brutale poiché - a differenza della IR che, grazie al prepass calcolava dei singoli punti (chiave di lettura dei chiaro-scuri) - interviene su ogni singolo pixel dell'immagine realizzando di fatto delle zone ombra più accentuate e definite anche se caratterizzate da una certa grana.

Page 72: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: QMC. Diffusione: 1, Int. Prim.: 100%. 64 campioni

IUAV – dCP – corso Disegno digitale 2013-14 72

Anche per il metodo Quasi-Monte Carlo aumentando la profondità diffusione aumenteremo la luminosità globale dell'immagine.

Page 73: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: IR+QMC. Diff.: 2, Int. Prim.: 100%. 128 camp.

IUAV – dCP – corso Disegno digitale 2013-14 73

E' un sistema che offre i vantaggi di entrambe le tecniche:perfetta per esterni per le ombre intense e definite e i piani bene illuminati.

Page 74: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: campioni cielo. Intensità: 100%. 64 campioni.

IUAV – dCP – corso Disegno digitale 2013-14 74

E' da utilizzarsi quando l'illuminazione è demandata solo alla presenza dell'oggetto Shader Cielo di Cinema 4D o all'oggetto Cielo Normale (quello presente in gestione luci). L'illuminazione proviene dall'alto (l’oggetto da illuminare deve poggiare su di un piano).

Page 75: Shading Rendering - Weeblycamillotrevisan.weebly.com/uploads/2/3/5/0/23508708/rendering.pdfdi rendering e modifica il colore delle facce del modello tridimensionale basandosi anche

Cinema 4D – Esempi di rendering eseguiti con varie tecnicheGlobal Illumination: campioni cielo. Intensità: 200%. 128 campioni.

IUAV – dCP – corso Disegno digitale 2013-14 75

Aumentando l'intensità primaria si illumina maggiormente la scena. Maggiore è il numero dei campioni e minore sarà la grana presente nella scena.