computer graphics n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Computer Graphics PowerPoint Presentation
Download Presentation
Computer Graphics

Loading in 2 Seconds...

play fullscreen
1 / 50

Computer Graphics - PowerPoint PPT Presentation


  • 130 Views
  • Uploaded on

Lezione 10: la L di T&L. Università dell’Insubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 200 6 /0 7. Computer Graphics. Marco Tarini. Lighting. L’altra met à del rendering Determinare la luce quanta luce di che colore che arriva

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

Computer Graphics


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
computer graphics

Lezione 10: la L di T&L

Università dell’Insubria

Facoltà di Scienze MFN di Varese

Corso di Laurea in Informatica

Anno Accademico 2006/07

Computer Graphics

Marco Tarini

lighting
Lighting
  • L’altra metà del rendering
  • Determinare la luce
    • quanta luce
    • di che colore

che arriva

    • da un punto della scena
    • all’occhio
  • Problema complesso...

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

lighting alcuni fattori
Lighting: alcuni fattori

ALTRA LUCE

blocker

assorbimento

in

ombra

raggio incidente

trasmissione (con rifrazione)

riflessione interna

riflessione

assorbimento

da parte del mezzo

(e.g. nebbia)

LUCE

scattering sotto la superficie

OGGETTO

OCCHIO

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

lighting alcuni fattori1
Lighting: alcuni fattori

riflessioni multiple

(illuminazione indiretta)

LUCE

OGGETTO

OCCHIO

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

lighting globale vs locale
Lighting: globale VS locale

tiene conto solo di:

condizioni di luce

N. luci

loro pos

loro colore

pezzetto della superficie da illuminare

orientamento (normale)

caratteristiche ottiche

per es, colore

il resto del mondo non c’è

riflessioni multiple

ombre

scattering sottosuperficiale

rifrazione

...

torna molto più

facile da fare

con il nostro

Hardware

Illuminazione locale

Illuminzione globale

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

lighting locale
Lighting locale

raggio incidente

rifelssione

LUCE

OGGETTO

OCCHIO

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

cosa facile fare
Cosa è facile fare
  • Illuminazione locale:
    • riflessioni della luce su oggetti
      • con proprietà ottiche molto semplici
    • con multiple fonti di luci
      • ma molto semplici: puntiformi
  • Illuminazione globale:
    • riflessioni multiple
      • in maniera BRUTALMENTE approssimata
    • assorbimento da parte del mezzo
      • assunzioni semplificanti (nebbia uniforme)
    • tutto il resto solo "a fatica"
      • escogitando algoritmi ad-hoc che si adattano al nostro l'HW

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

i 3 addendi nel modello di lighting di opengl
I 3 addendi nel modello di Lighting di OpenGL

per ogni addendo, ho una componente R, G e B.

luce finale

=

ambiente

+

riflessione

+

emissione

definite sia per l'oggetto,

(sotto forma di attributi per vertice)

sia per ogni luce che uso

le proprieta ottiche dell'oggetto,

(di solito sono attributi per vertice)

nel loro insieme sono dette

il suo "materiale"

terminologia OpenGL

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente emissione
Componente emissione
  • LEDs, lampadine...
  • Non dipende dalle luci
    • solo dall'oggetto
  • E’ solo una componente additiva
    • costante per R, G e B
  • Nota: non manda luce ad oggetti vicini
    • non e’ illuminazione globale
    • per fare cio’, devo aggiungere una altra luce

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

i 3 addendi nel modello di lighting di opengl1
I 3 addendi nel modello di Lighting di OpenGL

luce finale

=

ambiente

+

riflessione

+

emissione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente ambiente
Componente ambiente
  • Modella (grossolanamete)la luce che arriva attraverso rifelssioni multiple
  • Assunzione: "un pò di luce raggiunge da tutte le direzioni ogni superficie"
    • anche quelle in ombra
  • Piccola costante additiva
    • non dipende dalla normale della superficie

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente ambiente1
Componente ambiente
  • prodotto fra:
    • colore “ambient” del materiale ( RM GM BM)
    • colore “ambient” della luce ( RL GL BL)
  • Nota: possono essere colori RGB diversi
    • prodotto componente per componente

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente ambiente2
Componente ambiente
  • Modella (grossolanamete)la luce che arriva da tutte le direzioniattraverso rifelssioni multiple

senza

con

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

i 3 addendi nel modello di lighting di opengl2
I 3 addendi nel modello di Lighting di OpenGL

solo

componente

ambient

riflessione diffusa

+

riflessione speculare

luce finale

=

ambiente

+

riflessione

+

emissione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

i 4 addendi nel modello di lighting di opengl
I4addendi nel modello di Lighting di OpenGL

luce finale

=

ambiente

+

riflessione diffusa

+

riflessione speculare

+

emissione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa
Componente riflessione diffusa

Johann

Heinrich

Lambert

1728 - 1777

  • Esibita nella realtà da (per es):
    • gesso
    • legno (quasi)
    • materiali molto opachi (nel senso di "non lucidi")
  • Detta anche
    • diffuse reflection
    • Lambertian reflection

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa1
Componente riflessione diffusa
  • La luce che colpisce una superficie Lambertiana si riflette in tuttele direzioni (nella semisfera)
    • nello stesso modo

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa2
Componente riflessione diffusa
  • La luce che colpisce una superficie Lambertiana si riflette in tuttele direzioni (nella semisfera)
    • nello stesso modo

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa3
Componente riflessione diffusa
  • La luce che colpisce una superficie Lambertiana si riflette in tuttele direzioni (nella semisfera)
    • nello stesso modo

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa4
Componente riflessione diffusa
  • Dipende solo da:
    • l'orientamento della superficie
      • (la "normale")
    • la direzione della luce
      • del raggio incidente

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa5
Componente riflessione diffusa

R, G, B

(spesso, bianco: 1,1,1)

R, G, B

(il "colore" dell'oggetto)

moltiplicazione componente per componente

  • Dipende solo da:
    • l'orientamento della superficie N
      • (cioè la sua "normale")
    • la direzione della luce L
      • (cioé del raggio incidente)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa6
Componente riflessione diffusa

fa parte del

"materiale"

(caratteristica

dell'oggetto)

  • Dipende solo da:
    • l'orientamento della superficie N
      • (cioè la sua "normale")
    • la direzione della luce L
      • (cioé del raggio incidente)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa7
Componente riflessione diffusa
  • Dipende solo da:
    • l'orientamento della superficie N
      • (cioè la sua "normale")
    • la direzione della luce L
      • (cioé del raggio incidente)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa8
Componente riflessione diffusa

se angolo é compreso fra 0⁰ e 90⁰,

else: 0,

(oggetto in ombra di se stesso)

  • Dipende solo da:
    • l'orientamento della superficie N
      • (cioè la sua "normale")
    • la direzione della luce L
      • (cioé del raggio incidente)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa9
Componente riflessione diffusa

L

L

L

N

N

N

componente

diffusa

piccola

⍬=70⁰

componente

diffusa

grande

⍬=35⁰

componente

diffusa

massima

⍬=0⁰

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa10
Componente riflessione diffusa

L

L

N

N

componente

diffusa

ZERO

⍬=90⁰

componente

diffusa

ZERO

⍬>90⁰

(la superficie

è nella propria stessa

ombra)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione diffusa11
Componente riflessione diffusa
  • Proprietà
    • modello fedele delle caratteristiche ottichedi alcuni materiali reali 
    • ma di pochi materiali 
    • modello fisicamente coerente 
      • per es, conserva l'energia
    • molto semplice da calcolare 

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

i 4 fattori che consideriamo
I4 fattori che consideriamo

luce finale

=

ambiente

+

riflessione diffusa

+

riflessione speculare

+

emissione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare
Componente riflessione speculare
  • "Specular" reflection
  • Per materiali lucidi
    • con riflessi brillanti
    • ("highlights")

senza

con

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare1
Componente riflessione speculare
  • Idea base:la luce non viene riflessa da materiali lucidiin maniera eguale in tutte le direzioni

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare2
Componente riflessione speculare

in 3D

L: raggio incidente

N: normale

R: raggio riflesso

V: dir. di vista

N

L

R

q

q

V

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare3
Componente riflessione speculare

in 3D

  • Phong light model
    • by Bui-Tuong Phong, 1975

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare4
Componente riflessione speculare
  • Elevando il coseno ad una potenza,si ottengono riflessi piu' piccoli e brillanti

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare5
Componente riflessione speculare

in 3D

fanno parte del "materiale"

(caratteristiche dell'oggetto)

  • Phong light model
    • by Bui-Tuong Phong, 1975

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare6
Componente riflessione speculare

in 3D

  • Phong light model
    • by Bui-Tuong Phong, 1975

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare7
Componente riflessione speculare

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare8
Componente riflessione speculare

blinn-phong:

"half-way" vector

H = L + V / |L+V|

  • Blinn-Phong light model:
    • semplificazione del Phong light model
    • risultati simili, formula diversa:

phong:

N

L

R

q

q

V

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

componente riflessione speculare9
Componente riflessione speculare
  • Blinn-Phong light model:
    • semplificazione del Phong light model
    • risultati simili, formula diversa:

phong:

blinn-phong:

Jim Blinn

(MEGA-MEGA-GURU)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

i 4 fattori che consideriamo1
I4 fattori che consideriamo

luce finale

=

ambiente

+

riflessione diffusa

+

riflessione speculare

+

emissione

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

equazione di lighting in totale
Equazione di lighting in totale

propretà del materiale

propretà della luce

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

materiali
Materiali...

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

equazione di lighting m odellazione delle luci
Equazione di lighting:modellazione delle luci

propretà della luce

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

modellazione delle luci
Modellazione delle luci
  • Come varia L?
    • costante nella scena: fonti di luci "direzionali"
      • buono per fonti di luce molto distanti, e.g. il sole
    • varia nella scena: fonti di luci "posizionali"
      • buono per fonti di luci vicine, e.g. lampadine

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

modellazione delle luci luci posizionali
Modellazione delle luci: luci posizionali
  • Nelle luci posizionali, si può attenuare l'intensitàin funzione della distanza
  • In teoria (per la fisica) intensità = 1 / distanza2

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

modellazione delle luci luci posizionali1
Modellazione delle luci: luci posizionali
  • In pratica, questo porta ad attenuazioni della luce troppo repentine
  • Invece usiamo:

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

equazione di lighting
Equazione di lighting

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

tipi di luci
Tipi di luci
  • Tipi di luci:
    • posizionali
    • direzionali
    • spot-lights
      • (faretti)

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

spotlights
Spotlights
  • Definite da tre parametri:

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

equazione di lighting di opengl completa
Equazione di Lighting di OpenGL (completa)

caratteristiche della luce

caratteristiche del materiale

dati dalla scena

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a

prossimamente
Prossimamente:

set-up

set-up

rasterizer

punti

rasterizer

segmenti

v1

v0

v2

lighting: DOVE?

Frammenti

& attributi interpolati

Vertici poriettati

& attributi computati

Screen

buffer

Vertici

& loro attributi

set-up

rasterizer triangoli

computazioniper vertice

computazioniper frammento

y

v1

v0

v2

x

z

M a r c o T a r i n i ‧ C o m p u t e r G r a p h I c s ‧ 2 0 0 6 / 0 7 ‧ U n i v e r s i t à d e l l ’ I n s u b r i a