Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

35
Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006

Transcript of Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Page 1: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Modelli di IlluminazioneModelli locali

Daniele Marini

Corso Di Programmazione Grafica aa20052006

Programmazione Grafica aa20052006 2

Obiettivo

bull Visualizzare scene cercando di simulare al meglio la realtagrave

bull Elemento chiave interazione luce-materialindash Modellare le sorgenti di lucendash Modellare lrsquoapparenza visiva dei materiali

ndash Calcolare lrsquointerazione

Programmazione Grafica aa20052006 3

Fondamentibull Distinguiamo tra

ndash Modelli di illuminazione globalendash Modelli di illuminazione locale

bull I modelli locali trattano lrsquointerazione luce-materia localmente in un punto campione sulla superficie senza occuparsi di calcolare da dove proviene la luce (sorgenti di luce eo ambiente)

bull I modelli globali si occupano invece di descrivere da dove proviene la luce prima della sua interazione con un materiale e dove va dopo questa interazione

bull Una immagine puograve essere determinata applicando solo il modello di illuminazione locale o anche quello globale per determinare piugrave correttamente da dove proviene la luce (meglio ma piugrave lento)

Programmazione Grafica aa20052006 4

I modelli di illuminazione locale consideranobull sorgenti di luce puntiforme allrsquoinfinito o a distanza finitabull illuminazione ambiente costantebull riflessione diffusiva o speculare approssimatabull sorgenti di luce estese approssimatebull sorgenti di luce direzionali

I modelli globali tengono conto anche di caratteristiche fotometriche e radiometriche delle sorgenti

bull composizione spettrale della luce emessabull energia e geometria della emissionebull forma del corpo illuminantebull luce ambiente modellata correttamente

Fondamenti

Programmazione Grafica aa20052006 5

Lighting e Shading

bull Lighting calcolo del modello di illuminazione come la luce interagisce con la materia

bull Shading calcolata lrsquoilluminazione ai vertici si determina il colore di ogni pixel interno in generale con interpolazione

Programmazione Grafica aa20052006 6

Interazione luce-superfici

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 2: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 2

Obiettivo

bull Visualizzare scene cercando di simulare al meglio la realtagrave

bull Elemento chiave interazione luce-materialindash Modellare le sorgenti di lucendash Modellare lrsquoapparenza visiva dei materiali

ndash Calcolare lrsquointerazione

Programmazione Grafica aa20052006 3

Fondamentibull Distinguiamo tra

ndash Modelli di illuminazione globalendash Modelli di illuminazione locale

bull I modelli locali trattano lrsquointerazione luce-materia localmente in un punto campione sulla superficie senza occuparsi di calcolare da dove proviene la luce (sorgenti di luce eo ambiente)

bull I modelli globali si occupano invece di descrivere da dove proviene la luce prima della sua interazione con un materiale e dove va dopo questa interazione

bull Una immagine puograve essere determinata applicando solo il modello di illuminazione locale o anche quello globale per determinare piugrave correttamente da dove proviene la luce (meglio ma piugrave lento)

Programmazione Grafica aa20052006 4

I modelli di illuminazione locale consideranobull sorgenti di luce puntiforme allrsquoinfinito o a distanza finitabull illuminazione ambiente costantebull riflessione diffusiva o speculare approssimatabull sorgenti di luce estese approssimatebull sorgenti di luce direzionali

I modelli globali tengono conto anche di caratteristiche fotometriche e radiometriche delle sorgenti

bull composizione spettrale della luce emessabull energia e geometria della emissionebull forma del corpo illuminantebull luce ambiente modellata correttamente

Fondamenti

Programmazione Grafica aa20052006 5

Lighting e Shading

bull Lighting calcolo del modello di illuminazione come la luce interagisce con la materia

bull Shading calcolata lrsquoilluminazione ai vertici si determina il colore di ogni pixel interno in generale con interpolazione

Programmazione Grafica aa20052006 6

Interazione luce-superfici

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 3: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 3

Fondamentibull Distinguiamo tra

ndash Modelli di illuminazione globalendash Modelli di illuminazione locale

bull I modelli locali trattano lrsquointerazione luce-materia localmente in un punto campione sulla superficie senza occuparsi di calcolare da dove proviene la luce (sorgenti di luce eo ambiente)

bull I modelli globali si occupano invece di descrivere da dove proviene la luce prima della sua interazione con un materiale e dove va dopo questa interazione

bull Una immagine puograve essere determinata applicando solo il modello di illuminazione locale o anche quello globale per determinare piugrave correttamente da dove proviene la luce (meglio ma piugrave lento)

Programmazione Grafica aa20052006 4

I modelli di illuminazione locale consideranobull sorgenti di luce puntiforme allrsquoinfinito o a distanza finitabull illuminazione ambiente costantebull riflessione diffusiva o speculare approssimatabull sorgenti di luce estese approssimatebull sorgenti di luce direzionali

I modelli globali tengono conto anche di caratteristiche fotometriche e radiometriche delle sorgenti

bull composizione spettrale della luce emessabull energia e geometria della emissionebull forma del corpo illuminantebull luce ambiente modellata correttamente

Fondamenti

Programmazione Grafica aa20052006 5

Lighting e Shading

bull Lighting calcolo del modello di illuminazione come la luce interagisce con la materia

bull Shading calcolata lrsquoilluminazione ai vertici si determina il colore di ogni pixel interno in generale con interpolazione

Programmazione Grafica aa20052006 6

Interazione luce-superfici

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 4: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 4

I modelli di illuminazione locale consideranobull sorgenti di luce puntiforme allrsquoinfinito o a distanza finitabull illuminazione ambiente costantebull riflessione diffusiva o speculare approssimatabull sorgenti di luce estese approssimatebull sorgenti di luce direzionali

I modelli globali tengono conto anche di caratteristiche fotometriche e radiometriche delle sorgenti

bull composizione spettrale della luce emessabull energia e geometria della emissionebull forma del corpo illuminantebull luce ambiente modellata correttamente

Fondamenti

Programmazione Grafica aa20052006 5

Lighting e Shading

bull Lighting calcolo del modello di illuminazione come la luce interagisce con la materia

bull Shading calcolata lrsquoilluminazione ai vertici si determina il colore di ogni pixel interno in generale con interpolazione

Programmazione Grafica aa20052006 6

Interazione luce-superfici

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 5: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 5

Lighting e Shading

bull Lighting calcolo del modello di illuminazione come la luce interagisce con la materia

bull Shading calcolata lrsquoilluminazione ai vertici si determina il colore di ogni pixel interno in generale con interpolazione

Programmazione Grafica aa20052006 6

Interazione luce-superfici

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 6: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 6

Interazione luce-superfici

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 7: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 7

Interazione luce-superfici

bull Il comportamento opposto a quello della diffusione egrave la specularitagrave

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 8: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 8

Sorgenti di luce nella computer grafica

bull Sono una approssimazioni di quelle reali

bull Ambient lightbull Point lightbull Spot lightbull Distant lightbull Warn light

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 9: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 9

Sorgenti di luce

bull Il colore egrave descritto con tre componenti di intensitagrave (vettore)

I=[IR IG IB]

bull Luce ambiente idem Ia=[IaR IaG IaB]

bull In generale lrsquoenergia che giunge da una sorgente a un punto egrave inversamente proporzionale al quadrato della distanza ma in CG non sempre questo principio egrave applicato

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 10: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 10

Sorgente puntiformeSorgente estesa e penombra

Tipi di sorgenti

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 11: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 11

I =cosn(u)

Spot light

Sorgente spot

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 12: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 12

Sorgenti allrsquoinfinito

bull Chiamate distant light sourcesbull La posizione si dagrave in coordinate omogenee

bull Per sorgenti a distanza finita ps=[x y z 1]

bull Per sorgenti allrsquoinfinito ps=[x y z 0]

bull Lrsquointensitagrave non decade con lrsquoinverso del quadrato della distanza

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 13: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 13

Riassumendo

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 14: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 14

Modelli locali

bull Lambertndash Riflessione diffusa

bull Phongndash Riflessione diffusandash Riflessione speculare imperfetta

bull Componente luce ambientebull Sorgenti di lucebull Trasparenza

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 15: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 15

La geometria della riflessione nei modelli locali

bull P punto campione sulla sup

bull N normale alla sup in Pbull V direzione da P a COPbull L direzione da P a sorgente di luce (se estesa egrave un punto campione su essa)

bull R direzione di riflessione speculare della sorgente calcolata da N e L

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 16: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 16

Riflessione nei modelli locali

La riflessione egrave di tre tipi Dati N normale alla superficie L direzione luce incidente R direzione luce riflessa speculare

bull Riflessione diffusiva costante in tutte le direzioni ma funzione di LN (ovvero dipende dallrsquoangolazione con cui la luce arriva sulla superficie)bullRiflessione speculare perfetta LN = RN e la luce viene riflessa lungo unrsquounica direzionebull Riflessione speculare imperfetta la luce riflessa allrsquointerno di un angolo solido con intensitagrave massima nella direzione R e decrescente a 0 allontanandosi da R (bagliori highlight)

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 17: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 17

Riflessione di LambertRiflessione di Lambertbull Una superficie viene detta

diffusiva o lambertiana se rispetta la legge di Lambert (1760)Lambert J H Photometria Sive de mensura et gradibus Luminis Colorum et Umbrae Christoph Peter Detleffsen for the Widow of Eberhard Klett Augsburg 1760

bull La legge afferma che la luminositagrave di una superficie diffusiva non dipende dalla posizione dellrsquoosservatore ma dalla posizione della luce rispetto a questa

bull La luce viene riflessa uniformemente in tutte le direzioni

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 18: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 18

Modello di LambertModello di Lambertbull Legge di Lambert

Ir intensitagrave luce riflessaIi intensitagrave luce incidentekd coefficiente di riflessione diffusa

θcosidr IkI = θcosidr IkI =

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 19: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 19

)cos()0()(

)cos()0()(

)cos()0()(

θθ

θθ

θθ

iBiBdBr

GiGdGr

RiRdRr

IkI

IkI

IkI

=

=

=

Calcolo RGB del modello di Lambert

bull Il colore della superficie dipende quindi dai tre valori(kdR kdG kdB)

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 20: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 20

Lambert+Luce ambiente

sum=

+=p

lllidaar IkIkI

1 )cos(θ

p sorgenti puntiformi(θl = angolo con la sorgente l-esima)Ripetuta 3 volte per R G e B

Una sorgente

)cos(

)cos(

)cos(

θθθ

BiBiBaBaBr

GiGiGaGaGr

RiRiRaRaRr

IkIkI

IkIkI

IkIkI

+=

+=

+=

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 21: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 21

Modello di Phong Modello di Phong (1975)(1975)

bull Calcola anche la riflessione speculare imperfetta considerando la posizione dellrsquoosservatore

bull La luce riflessa egrave data dalla somma di 3 componenti1Riflessione lambertiana2Riflessione speculare imperfetta3Luce ambientale

bull Phong BT Illumination for computer generated pictures Communications of the ACM vol 18 n 6 1975

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 22: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 22

Modello di PhongModello di Phong

( ) aan

isidr IkIkIkI ++= αθ coscos ( ) aan

isidr IkIkIkI ++= αθ coscos

riflessione

lambertiana

riflessione

speculare imperf

luce

ambientaleαθ

cos

cos

=sdot

=sdot

VR

NL

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 23: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 23

Modello di PhongModello di Phong

bull I parametri sono1 kd coefficiente di riflessione diffusa 0 kd

12 ks coefficiente di riflessione speculare 0

ks 13 ka coefficiente di riflessione luce ambientale

0 ka 14 n esponente di Phong (ampiezza dellrsquohighlight)5 Il colore e lrsquoapparenza della superficie

dipendono quindi dai nove valori(kdR kdG kdB) colore diffuso(ksR ksG ksB) colore speculare(kaR kaG kaB) colore ambientedipende anche dallrsquointerfaccia del softwarehellip

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 24: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 24

Modello di PhongModello di Phong

bull Per il principio di conservazione dellrsquoenergia dovrebbe essere kd + ks 1

bull Ovvero una superficie non puograve riflettere piugrave luce di quanta ne riceve

bull Tuttavia nella simulazione software questo puograve anche verificarsi come errore voluto

bull Dipende dallrsquoimplementazione softwarehelliphellip

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 25: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 25

Modello di PhongModello di Phong

bull Nella componente speculare imp

ndash Lrsquoangolo α misura quantolrsquoosservatore si discostadalla direzione specularerispetto alla luce

ndash Lrsquoesponente di Phong ndetermina lrsquoampiezzadellrsquohighlight (maggiore n minore lrsquohighlight)( )nis Ik αcos( )nis Ik αcos

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 26: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 26

Modello di PhongModello di Phong

bull La componente ambientale simula la luce che non proviene direttamente dalle sorgenti di illuminazione ma dagli altri oggetti dellrsquoambiente tramite una costante

bull Moltissimi oggetti di uso comune hanno una riflessione mista in parte diffusiva e in parte speculare

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 27: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 27

Modello di PhongModello di PhongConfronti con ka=07 n=10 al variare di kd e ks

ks

kd

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 28: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 28

Lrsquoandamento del coseno

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 29: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 29

Modifica del modello di Phong Blinn (1977)

bull Anzicheacute la direzione R si considera la bisettrice H tra L e V e il suo angolo che viene sostituito ad α nel calcolo della componente speculare imperfettakscosn dove cos = HN

bull Questo modello non egrave fisicamente piugrave corretto ma piugrave semplice da calcolare ndash langolo egrave sempre 90deg e si evita di doverne verificare il

valore ndash egrave piugrave semplice da calcolare di α

si comporta come lrsquoangolo α egrave una approssimazione decresce piugrave rapidamente quindi nel modello di Blinn si usa un esponente n piugrave piccolo

bull Blinn J F Models of Light Relfection forComputer Synthesized Pictures ComputerGraphics (SIGGRAPH 77 Proceedings)vol 11 n 2 pp 192-198 July 1977

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 30: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 30

Il calcolo di R

Si puograve calcolare come R = 2(NL)N - L

N

L

-L

2(NL)N

2(NL)N - L

(NL)N

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 31: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 31

Il metodo di Blinn

bull Egrave il metodo adottato in OpenGL e in Direct3D

bull Occorre ricordare che quando lrsquoangolo egrave maggiore di 2 (90deg) non crsquoegrave riflessione

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 32: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 32

Sorgenti di luce estese modello di Warn

bull Si possono trattare sorgenti di luce non puntiformi (direzionali) e a distanza d (luci di Warn - spot)

2

)(cos

d

II

wsorgente

i

φ= con angolo solido di emissione

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 33: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 33Con luce ambienteSenza luce ambiente

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 34: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 34

Il modello completo

estese) sorgenti delle o(contribut )coscos(cos

)puntiformi sorgenti delle o(contribut )coscos(

ambiente) lucedella o(contribut

1

1

ekkIk

pkkIk

IkI

e

ll

nsldl

wlilatt

p

ll

nsldlilatt

aar

sum

sum

=

=

+sdot

++

+=

αθφ

αθ

Il termine katt tiene conto dellrsquoattenuazione della propagazione della luce nellrsquoatmosfera rispetto alla sorgente l-esima conkatt = max ( 1(a+bd+cd2) 1) invece del piugrave semplice 1d2

Dove d egrave la distanza tra il punto campione sulla superficie e la sorgente di luce mentre abc sono parametri arbitrari scelti dal programmatore sulla base dellrsquoesperienza

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato
Page 35: Modelli di Illuminazione Modelli locali Daniele Marini Corso Di Programmazione Grafica aa2005/2006.

Programmazione Grafica aa20052006 35

Limiti del modello locale illustrato

bull Ma lrsquointensitagrave I della luce che cosa egrave (Intensitagrave luminosa Intensitagrave radiante Illuminamento Luminanza hellip) Dipende da campionamento spaziale della luce ovvero dal modello di illuminazione globale

bull Il modello simula oggetti di plastica ceramica o simili

Strato esterno - riflessione speculare

Strato interno - riflessione diffusiva

  • Modelli di Illuminazione Modelli locali
  • Obiettivo
  • Fondamenti
  • Slide 4
  • Lighting e Shading
  • Interazione luce-superfici
  • Slide 7
  • Sorgenti di luce nella computer grafica
  • Sorgenti di luce
  • Tipi di sorgenti
  • Sorgente spot
  • Sorgenti allrsquoinfinito
  • Riassumendo
  • Modelli locali
  • La geometria della riflessione nei modelli locali
  • Riflessione nei modelli locali
  • Riflessione di Lambert
  • Modello di Lambert
  • Calcolo RGB del modello di Lambert
  • Lambert+Luce ambiente
  • Modello di Phong (1975)
  • Modello di Phong
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
  • Lrsquoandamento del coseno
  • Modifica del modello di Phong Blinn (1977)
  • Il calcolo di R
  • Il metodo di Blinn
  • Sorgenti di luce estese modello di Warn
  • PowerPoint Presentation
  • Il modello completo
  • Limiti del modello locale illustrato