+ All Categories
Home > Documents > 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti...

1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti...

Date post: 01-May-2015
Category:
Upload: rachele-mariotti
View: 214 times
Download: 0 times
Share this document with a friend
41
1 Modelli Globali Daniele Marini
Transcript
Page 1: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

1

Modelli Globali

Daniele Marini

Page 2: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

2

• Calcolare interazione-luci materiali non solo su singoli oggetti

• Tenere conto della interazione della luce che viene riflessa dagli oggetti

Page 3: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

3

Modelli e metodi di rendering

• Nei metodi locali: modello di illuminazione + shading (+ smoothing)

• Metodi globali: modelli di illuminazione più accurati + rendering

• 2 metodi principali– View dependent– View independent

Page 4: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

4

Dipendente dalla vista: Ray tracing

• Simula il percorso dei raggi luminosi

• Modello di illuminazione: Whitted + estensioni

Page 5: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

5

Indipendente dalla vista: Radiosity

• Simula il bilancio energetico in un ambiente chiuso

• Modello Lambertiano + estensioni

Page 6: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

6

Equazione fondamentale del rendering

• Kajia 1986

I(x,x') =g(x,x' ) ε(x,x' )+ ρ(x,x',x")I(x,x')dx"s∫

⎣ ⎢ ⎢

⎦ ⎥ ⎥

dove:

I(x,x') intensità della radiazione da x a x'

g(x,x') funzione geometrica di visibilità tra x e x'

ε(x,x' ) emittanza da x a x'

ρ(x,x',x") riflettivita bidirezionale:

luce proveniente da x" riflessa da x verso x'

s superficie

Page 7: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

7

Modello di Whitted

• E’ un modello ibrido, unisce aspetti locali e globali

• Il raggio che giunge al pixel nella direzione di COP è il risultato di:– Raggio iniziale+

– Raggio trasmesso+

– Raggio riflesso

• Metodo ricorsivo, albero delle riflessioni e trasmissioni multiple

Page 8: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

8

Ray casting Raggi ombra (shadow)

Specchi (mirror) Raggi trasmessi e riflessi

Page 9: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

9

scena Albero corrispondente

Page 10: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

10

Problemi

• Dipende da “search”

• Calcolo intersezioni critico

• Ottimizzazione:• Bounding volumes

• Parallelizzazione

Page 11: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

11

Il calcolo delle intersezioni• Intersezione raggio/sfera - soluzione

algebrica– Definiamo un raggio da COP al pixel sul piano

immagine con l’equazione parametrica:

– Per t<0 i punti sul raggio sono dietro COP, t=0 va evitato per problemi numerici

Rorigine= x0,y0,z0[ ]

Rdirezione= xd,yd,zd[ ]

R(t) =Rorigine+Rdirezione* t con t>0

Page 12: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

12

Intersezione raggio/sfera

• Equazione sfera:

• Sostituire equazione raggio in equazione sfera e si risolve rispetto a t

Sc = xc ,yc,zc[ ] centro sfera

Sr raggio sfera

xs,ys,zs[ ] tali che xs −xc( )2

+ ys −yc( )2+ zs −zc( )

2=Sr

2( )

sono punti sulla superficie

Page 13: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

13

Intersezione raggio/sfera

• Equazione quadratica, 2 soluzioni:– Se complesse non c’e’ intersezione

– Se reali ordinare le soluzioni t0 e t1: il minimo rappresenta la prima interesezione

– Il punto intersezione è:

– La normale alla superficie è:

Pintersezione=Pi = x0 +xd * t,y0 +yd * t,z0 +zd *t[ ]

Pnormale=xi −xcSr

,yi −ycSr

,zi −zcSr

⎣ ⎢ ⎢

⎦ ⎥ ⎥

Page 14: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

14

Intersezione raggio/sfera

• Passi:• Calcolare coefficiente eq. II grado: 8 + e -, 7 *• Calcolo discriminante: 1-, 2*, 1=• Determinazione intersezione minima, eventuale calcolo

della seconda: 1-, 1*, 1 sqrt, 1=; event. 1-,1*, 1=• Calcolo punto intersezione: 3+, 3*• Calcolo normale al punto: 3-, 3*

– Totale 17 + o - 17*, 1 sqrt, 3=

Page 15: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

15

Intersezione raggio/sfera: soluzione geometrica

– Origine raggio interna alla sfera? Calcola lunghezza vettore centro-origine e controlla con raggio sfera

– Se il raggio è esterno e punto lontano dalla sfera no intersezione (verifica direzione raggio)

– Trova distanza retta raggio da centro, valuta segno:

orig

origt

t

Page 16: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

16

Intersezione raggio/sfera: soluzione geometrica

– Se esiste calcola interesezione, sfruttando distanza retta da centro

– Numero operazioni totale: 16+ o -, 13*,1 sqrt, 3=

Page 17: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

17

Altri effetti

• Ray tracing distribuito: • motion blur• profondità di campo

• Ray tracing a due passate:– Simula scattering della luce attraverso un mezzo

(acqua, vetro)• I passo: luce• II passo: occhio

• Modellazione spettrale delle sorgenti di luce• Tessiture

Page 18: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

18

Ray tracing distribuito

• Ogni pixel viene sovracampionato, ad es. 3x3 volte

• Le posizioni dei pixel sovracampionati possono essere regolari o casuali: jittering

• Il pixel assume un valore come media dei campioni

• Jittering consiste nel perturbare la posizione dei socracampioni rispetto a una loro distribuzione regolare

Page 19: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

19

Jitteringpixelsovracampioni

Se i campioni sono prevalentemente al centro si harumore minimo ma alto aliasingSe i campioni sono meno concentrati al centro siha meno aliasing e più rumoreSi può predisporre una matrice di jitter con una distribuzione Gaussiana

Page 20: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

20

Profondità di campo

• Occhio e lente fotografica hanno un’apertura finita; ogni punto appare come un piccolo cerchio sul piano immagine: cerchio di confusione

• L’immagine prodotta dal foro stenopeico è perfettamente a fuoco

Page 21: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

21

distanza piano focale:

Vp =Fpp−F

per p>F

punti fuori fuoco sono proiettati :

Vd =Fdd−F

per d>F

cerchio di confusione:

C=Vd −VpFnVd

Page 22: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

22

Jittering per profondità di campo

• Se il punto campionato è sul piano focale, i punti jittered sono assai vicini e la loro media non si scosta troppo dal valore del punto centrale

• Se il punto campionato è lontano dal piano focale i punti jittered sono distanti e la loro media crea un effetto di sfocatura

Page 23: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

23

Jittering per motion blur

• Si può sovracampionare l’immagine temporalmente, usando matrice di jitter a istanti di tempo distinti

• La maggiore velocità di un oggetto esalta l’effetto mosso

Page 24: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

24

Page 25: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

25

Page 26: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

26

Page 27: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

27

Modelli di illuminazione avanzati

ρ λ;φi,θi;φr,θr( ) =Lr λ;φi,θi;φr,θr( )Li λ;φi,θi( )cosφidω

dω angolo solido infinitesimo

φi,θi angoli della direzione incidente

φr,θr angoli della direzione di riflessione

Riflettività bidirezionale

Page 28: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

28

Funzioni di Fresnel

• indica il rapporto tra l'intensità della radiazione incidente e quella della radiazione trasmessa all'interno del materiale

• radiazione polarizzata trasmessa da un dielettrico, dipende dall’angolo di incidenza e di trasmissione:

F(λ) =12sin2(θi −θt)sin2(θi +θt)

1+cos2(θi +θt)cos2(θi −θt)

⎝ ⎜ ⎜

⎠ ⎟ ⎟

Page 29: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

29

Funzione di Fresnel per dielettrico

• l’intensità della radiazione trasmessa dipende sia dalla direzione della radiazione incidente sia dalla direzione della radiazione trasmessa;

• Le due direzioni sono coplanari

Page 30: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

30

Funzione di Fresnel per conduttore

• n2 è l'indice di rifrazione del mezzo conduttore (quello dell'aria è pari a 1) e k2 è il coefficiente di attenuazione del conduttore

• L’intensità della luce trasmessa nel conduttore dipende solo dalla direzione della luce incidente:

F(λ) =12

(n2 cosθi −1)2 +(k2 cosθi)2

(n2 cosθi +1)2 +(k2 cosθi)2 +

(n2 −cosθi)2 +k2

2

(n2 +cosθi)2 +k2

2

⎝ ⎜ ⎜

⎠ ⎟ ⎟

Page 31: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

31

Funzioni di Fresnel

Con le funzioni di Fresnel si controlla l’attenuazione dell'energia luminosa nella riflessione o trasmissione con conduttori e dielettrici

Page 32: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

32

Trattamento superficiale

Page 33: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

33

Modello di Cook e Torrance• luminanza riflessa da un superficie come funzione della riflettività bidirezionale• riflettività espressa come somma di una componente diffusiva e di una speculare

• se il materiale è un dielettrico puro kd=1 e ks=0

• se il materiale è un conduttore puro kd=0 e ks=1

ρ≅kdρd +ksρskd +ks =1

Page 34: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

34

Modello di Cook e Torrance

• La riflettività diffusiva d viene considerata puramente lambertiana

• la riflettività speculare è approssimata con l'equazione:

ρs =F.D.G

πcosθi cosθr

Page 35: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

35

Modello di Cook e Torrance

• F rappresenta la funzione di Fresnel descrive la componente parzialmente trasmessa nel materiale e successivamente riflessa

Page 36: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

36

• D funzione di rugosità, indica la percentuale di microfacce orientate come la direzione di osservazione– modello gaussiano:

• con angolo tra L e H, c costante arbitrara, m indice di rugosità normalizzato, quando prossimo a 0 superficie liscia, prossimo a 1 molto rugosa

– modello di Beckmann:

D(m,c,α ) = ce− α / m( )2

D(m,α ) =1

m2 cos4 (α )e− tan(α( ) / m[ ]

2

Page 37: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

37

• G parametro geometrico tiene conto dell'orientamento delle microfaccette superficiali, che possono proiettare un'ombra su faccette vicine (shadowing) o produrre una riflessione speculare verso la direzione di osservazione o infine la luce riflessa può essere parzialmente bloccata da altre faccette (masking).

G(N,V,L) = min 1,γ(N.V),γ(N.L)[ ]

γ =2(N.H)

V.H

Page 38: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

38

Page 39: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

39

Page 40: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

40

Page 41: 1 Modelli Globali Daniele Marini. 2 Calcolare interazione-luci materiali non solo su singoli oggetti Tenere conto della interazione della luce che viene.

41


Recommended