1 shading e smoothing daniele marini, maurizio rossi

27
1 Shading e Smoothing Daniele Marini, Maurizio Rossi

Upload: francesco-locatelli

Post on 02-May-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

1

Shading e Smoothing

Daniele Marini Maurizio Rossi

2

Shading e smoothing

bull Shading raffigurare poliedri assegnando alle facce una luminositagrave proporzionale alla luce che ricevono

bull Smoothing simulare superfici curve descritte da poliedri mediante tecniche di interpolazione

3

Shading e somoothing (cont)

bull La luminositagrave che giunge su una faccia dipende dal suo orientamento verso la sorgente di luce (legge di Lambert)

bull Egrave essenziale conoscere la normale di una faccia

bull Vari metodi di calcolo del vettore n normale ad una superficie

4

Calcoli sui vettori

bull Vettore normalebull equazione del piano ax+by+cz+d=0 si puograve anche scrivere come luogo

e p egrave un qualunque punto nel piano il vettore n egrave dato da

0)( 0 ppn

n a

b

c

e in coordinate omogenee n

a

b

c

0

5

In generale possiamo partire da tre punti non allineati p0 p1 p2 con i quali determiniamo il piano (superfici approssimate con poliedri triangolarizzati)

Le differenze p2 - p0 e p1 - p0 sono coplanari e il loro prodotto vettoriale dagrave la normale

n = (p2 - p0) x (p1 - p0)

Lrsquoordine egrave rilevanteLrsquoordine egrave rilevante

6

Il calcolo delle normali di superfici curve dipende da come la superficie egrave rappresentata ma in generale si stima un gradiente Es sfera - equazione

f(xyz) x2 + y2 + z2 -1=0In forma vettoriale

f(p) pp -1 = 0Il vettore gradiente egrave dato da

n

f

xf

yf

z

2x

2y

2z

2p

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 2: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

2

Shading e smoothing

bull Shading raffigurare poliedri assegnando alle facce una luminositagrave proporzionale alla luce che ricevono

bull Smoothing simulare superfici curve descritte da poliedri mediante tecniche di interpolazione

3

Shading e somoothing (cont)

bull La luminositagrave che giunge su una faccia dipende dal suo orientamento verso la sorgente di luce (legge di Lambert)

bull Egrave essenziale conoscere la normale di una faccia

bull Vari metodi di calcolo del vettore n normale ad una superficie

4

Calcoli sui vettori

bull Vettore normalebull equazione del piano ax+by+cz+d=0 si puograve anche scrivere come luogo

e p egrave un qualunque punto nel piano il vettore n egrave dato da

0)( 0 ppn

n a

b

c

e in coordinate omogenee n

a

b

c

0

5

In generale possiamo partire da tre punti non allineati p0 p1 p2 con i quali determiniamo il piano (superfici approssimate con poliedri triangolarizzati)

Le differenze p2 - p0 e p1 - p0 sono coplanari e il loro prodotto vettoriale dagrave la normale

n = (p2 - p0) x (p1 - p0)

Lrsquoordine egrave rilevanteLrsquoordine egrave rilevante

6

Il calcolo delle normali di superfici curve dipende da come la superficie egrave rappresentata ma in generale si stima un gradiente Es sfera - equazione

f(xyz) x2 + y2 + z2 -1=0In forma vettoriale

f(p) pp -1 = 0Il vettore gradiente egrave dato da

n

f

xf

yf

z

2x

2y

2z

2p

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 3: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

3

Shading e somoothing (cont)

bull La luminositagrave che giunge su una faccia dipende dal suo orientamento verso la sorgente di luce (legge di Lambert)

bull Egrave essenziale conoscere la normale di una faccia

bull Vari metodi di calcolo del vettore n normale ad una superficie

4

Calcoli sui vettori

bull Vettore normalebull equazione del piano ax+by+cz+d=0 si puograve anche scrivere come luogo

e p egrave un qualunque punto nel piano il vettore n egrave dato da

0)( 0 ppn

n a

b

c

e in coordinate omogenee n

a

b

c

0

5

In generale possiamo partire da tre punti non allineati p0 p1 p2 con i quali determiniamo il piano (superfici approssimate con poliedri triangolarizzati)

Le differenze p2 - p0 e p1 - p0 sono coplanari e il loro prodotto vettoriale dagrave la normale

n = (p2 - p0) x (p1 - p0)

Lrsquoordine egrave rilevanteLrsquoordine egrave rilevante

6

Il calcolo delle normali di superfici curve dipende da come la superficie egrave rappresentata ma in generale si stima un gradiente Es sfera - equazione

f(xyz) x2 + y2 + z2 -1=0In forma vettoriale

f(p) pp -1 = 0Il vettore gradiente egrave dato da

n

f

xf

yf

z

2x

2y

2z

2p

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 4: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

4

Calcoli sui vettori

bull Vettore normalebull equazione del piano ax+by+cz+d=0 si puograve anche scrivere come luogo

e p egrave un qualunque punto nel piano il vettore n egrave dato da

0)( 0 ppn

n a

b

c

e in coordinate omogenee n

a

b

c

0

5

In generale possiamo partire da tre punti non allineati p0 p1 p2 con i quali determiniamo il piano (superfici approssimate con poliedri triangolarizzati)

Le differenze p2 - p0 e p1 - p0 sono coplanari e il loro prodotto vettoriale dagrave la normale

n = (p2 - p0) x (p1 - p0)

Lrsquoordine egrave rilevanteLrsquoordine egrave rilevante

6

Il calcolo delle normali di superfici curve dipende da come la superficie egrave rappresentata ma in generale si stima un gradiente Es sfera - equazione

f(xyz) x2 + y2 + z2 -1=0In forma vettoriale

f(p) pp -1 = 0Il vettore gradiente egrave dato da

n

f

xf

yf

z

2x

2y

2z

2p

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 5: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

5

In generale possiamo partire da tre punti non allineati p0 p1 p2 con i quali determiniamo il piano (superfici approssimate con poliedri triangolarizzati)

Le differenze p2 - p0 e p1 - p0 sono coplanari e il loro prodotto vettoriale dagrave la normale

n = (p2 - p0) x (p1 - p0)

Lrsquoordine egrave rilevanteLrsquoordine egrave rilevante

6

Il calcolo delle normali di superfici curve dipende da come la superficie egrave rappresentata ma in generale si stima un gradiente Es sfera - equazione

f(xyz) x2 + y2 + z2 -1=0In forma vettoriale

f(p) pp -1 = 0Il vettore gradiente egrave dato da

n

f

xf

yf

z

2x

2y

2z

2p

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 6: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

6

Il calcolo delle normali di superfici curve dipende da come la superficie egrave rappresentata ma in generale si stima un gradiente Es sfera - equazione

f(xyz) x2 + y2 + z2 -1=0In forma vettoriale

f(p) pp -1 = 0Il vettore gradiente egrave dato da

n

f

xf

yf

z

2x

2y

2z

2p

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 7: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

7

Se la sfera egrave rappresentata in forma parametrica il metodo di calcolo cambia

vu

uvuzz

vuvuyy

vuvuxx

22

con

)sin()(

)cos()cos()(

)sin()cos()(

La normale si puograve ricavare dal piano tangente in p

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 8: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

8

p

u

x

uy

uzu

p

v

x

vy

vzv

n pu

pv

n cos(u)

cos(u)sin(v)

cos(u)cos(v)

sin(u)

cos(u)p

Individuano due vettoritangenti il cui prodotto vettore individua la normale - poicheacute ci interessa solo la direzione si puograve dividere per cos(u) ottenendo un vettore unitario

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 9: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

9

Quando calcolare le normali

bull Lrsquoarchitettura a pipe line dei sistemi di rendering prevede che la normale di una faccia sia nota a priori (viene elaborato un vertice per volta e non tutta lrsquoinformazione egrave disponibile)bull In generale egrave compito del programma applicativo calcolare la normale Le librerie grafiche come OpenGL o linguaggi come VRML permettono di associare a ogni vertice o faccia una normale (che dobbiamo calcolare noi nel programma applicativo)bull BlueMoon esegue il calcolo delle normali partendo dai dati di geometria

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 10: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

10

Ancora sulle normali

bull Il calcolo delle normali ha anche interesse per simulare effetti di trasparenza (che non fanno parte del problema base dello shading ) per poter simulare correttamente il fenomeno della rifrazione

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 11: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

11

Trasmissione legge di SnellTrasmissione legge di Snellbull La luce che colpisce un materiale puograve essere1 Assorbita (trasformata in unrsquoaltra forma di energia calorehellip)

2 Riflessa (diffusamente eo specularmente)

3 Trasmessa (diffusamente eo specularmente)

bull Trasmissione speculare Rifrazione governata dalla legge di Snell

2211 sennsenn 2211 sennsenn

1

2

n1

n2

- denso

n1 lt n2

+ denso

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 12: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

12

Rifrazione TIRRifrazione TIRbull Fenomeno riflessione interna totale (TIR)bull La luce che proviene da un mezzo piugrave denso ad uno meno denso

con direzione quasi parallela alla superficie viene riflessabull Es fibre ottiche

90deg

TIR

n1

n2

- denso

+ denso

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

1 gt 90deg comporta 2 gt TIR

con TIR = arcsen(n1 n2)

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 13: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

13

La geometria della riflessione

bull P punto campione sulla supbull 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

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 14: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

14

Shading di poligoni(Flat shading)

bull N V ed L variano su ogni poligono

bull Se si assume osservatore ldquodistanterdquo e sorgente di luce distante V e L sono costanti

bull Anche N egrave quindi costante sullrsquointero poligono

bull Il calcolo di shading viene fatto per lrsquointero poligono una sola volta

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 15: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

15

Flat shadingFlat shadingbull Flat shading i poligoni vengono colorati uniformemente

indipendentemente dalla posizione dellrsquoosservatorebull La luminositagrave del colore del poligono egrave determinata

dallrsquoangolo tra la direzione della normale al poligono e la direzione da cui proviene la luce

bull Egrave molto veloce e consente animazioni real time

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 16: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

16

Flat shading di poliedri

bull Egrave importante sfruttare informazioni giagrave calcolate nel passare da una faccia alla successiva bull Si possono organizzare i triangoli di un poliedro in triangle strip il che permette di risparmiare informazioni sulle normali ad es OGL usa la normale del terzo vertice per il primo triangolo la normale del quarto per il secondo e cosigrave via

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 17: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

17

Triangle strip

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 18: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

18

Effetti di flat shading

Bande di Mach

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 19: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

19

Smooth shading (interpolato)

bull Ci sono due tecniche di interpolazionendash Interpolazione di Gouraud

bull Implementata a livello hardware su tutte le recenti schede grafiche 3D

ndash Interpolazione con modello di Phongbull Implementata a livello hardware solo sulle

piugrave recenti e costose schede grafiche 3D

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 20: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

20

GouraudGouraudbull Gouraud shading i poligoni vengono colorati

indipendentemente dalla posizione dellrsquoosservatore

bull Si considerano le normali alla superficie nei vertici del poligono e per ognuno dei vertici si calcola lrsquointensitagrave

bull Nei punti interni al poligono lrsquointensitagrave non egrave costante ma determinata dalla interpolazione bilineare di quella nei vertici

bull La continuitagrave cromatica egrave garantita tra poligoni adiacenti

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 21: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

21

GouraudGouraudbull Gouraud shading attenzionebull Sebbene la continuitagrave cromatica tra poligoni

adiacenti renda lrsquoaspetto di una superficie curva questa egrave sempre e solo poligonale Si vede dai contorni

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 22: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

22

Interpolazione bilineare

Descriviamo i latiin forma parametricaegrave il parametro

C4( ) (1 )C0 C1

C5( ) (1 )C2 C3

C45( ) (1 )C4 C5

Interpoliamo lungoUna linea di scansionedel poligono

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 23: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

23

Phong Smoothingbull Basato sullrsquointerpolazione

delle normalibull Il colore si calcola alla fine

sul singolo pixel

DCCD

BAC

nnn

nnn

1

1

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 24: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

24

Gouraud vs Phong shading

bull hardwarebull velocebull continuo fino al I

ordinebull effetti lucentezza

limitati (migliorano se si aumenta la triangolazione)

bull Software (hw sulle nuove sch 3D)

bull Piugrave lentobull continuo fino al II ordinebull si puograve applicare modello

di Phong per lucentezza

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 25: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

25

ConfrontiConfrontibull Confronto tra Flat Gouraud e Phong per un

modello poligonale (triangoli) a bassa risoluzione

Flat Gouraud Phong

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 26: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

26

Le luci nelle libreriebull Spesso nelle librerie grafiche (es OGL) la definizione

delle sorgenti egrave piugrave complessabull In OGL i parametri sono

bull Posizione (direzione) della sorgentebull Livelli di

ndash Ambientendash Diffusandash Speculare

bull Associati alla sorgente

ndash Ovvero in OGL ogni sorgente produce un contributo di luce ambiente diffusiva eo speculare

ndash la specularitagrave e diffusivitagrave dovrebbero essere viceversa proprietagrave delle superfici

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27
Page 27: 1 Shading e Smoothing Daniele Marini, Maurizio Rossi

27

Caratterizzare i materiali

bull Occorre assegnare alle superfici caratteristiche di riflettivitagravendash diffusiva

ndash speculare

bull Rispettando il modello di illuminazione sceltobull Nei modelli locali la riflettivitagrave non ha riferimento

colorimetrici o fotometrici occorrono modelli piugrave avanzati (BRDF BSSRDF ecc)

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
  • Slide 27