Sei sulla pagina 1di 26

Laboratorio CAD e Informatica T – CdL Ing.

Ambiente e Territorio
Prof. Ing. Alfredo Liverani

RENDERING
Procedura attraverso la quale un modello
tridimensionale o gruppo di modelli
(scenario) digitale può essere trasformato in
un’immagine a video
Tecnica per dare realismo a immagini
derivate da modelli tridimensionali

1/37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

La visualizzazione nei sistemi CAD:
il problema della visibilità
La mancanza di colorazione delle superfici impedisce di
distinguere le superfici vicine dalle lontane e non permette
l’eliminazione delle superfici nascoste.
La visualizzazione non solo è poco realistica, ma soprattutto
assolutamente poco chiara.

1
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Rendering:
componenti fondamentali
((ombreggiatura)
gg )
Per rendere più realistiche le immagini:

1. superfici di esterne degli oggetti (il modello geometrico 3D di partenza);


2. materiali assegnati alle superfici degli oggetti (le superfici possono
riflettere/rifrangere luce….);
3
3. l presenza di una o più
la iù sorgenti
ti di luce
l (
(puntiforme
f o diffusa,
ff vicina o
lontana, ...);
4. un osservatore e una piramide di vista.

3/37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Rendering
Per qualsiasi tipo di colorazione delle superfici
(shading) occorre innanzitutto posizionare il tipo 
di sorgente luminosa ed il punto di vista 
dell’osservatore

4/37

2
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

La visualizzazione nei sistemi CAD:


la Graphics Pipeline
EE’ necessaria quindi una procedura standard attraverso la 
necessaria quindi una procedura standard attraverso la
quale un modello tridimensionale o gruppo di modelli 
(scenario) digitale possano essere trasformati in un’immagine 
a video.

Visualizzazione basica
Visualizzazione basica

Visualizzazione avanzata

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

La visualizzazione basica

Provvede alla colorazione delle superfici in funzione 
d ll’
dell’orientamento dell’osservatore e della/e sorgenti di 
d ll’ d ll / d
luce (ombreggiatura).
L’algoritmo principale è quello cosiddetto di scan 
conversion.
Si basa sulla formulazione del comportamento della 
luce sulle superfici molto semplificata.
Punta alla visualizzazione interattiva più che al realismo 
della simulazione.

3
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

La visualizzazione avanzata

Provvede alla colorazione delle superfici in funzione 
dell’orientamento dell’osservatore e della/e sorgenti di 
luce, delle proprietà assegnate alle singole superfici 
(materiali), al comportamento rispetto alla luce degli 
altri componenti della scena (Global Illumination).

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

La visualizzazione avanzata

Utilizza algoritmi di scan conversion o, più spesso, di ray 
tracing o radiosity.
Si basa sulla formulazione del comportamento della 
luce sulle superfici molto raffinata, quindi lenta da 
calcolare.
Punta alla visualizzazione realistica piuttosto che 
interattiva (rendering).

4
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

La visualizzazione basica/avanzata

• Flat shading
Flat shading
Vis. basica

• Gouraud shading

• Phong shading

• Ray tracing
y g
Vis. avanzata
a

• Radiosity

• Ray tracing + radiosity
9

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Algoritmi di colorazione
delle superfici
• Flat shading Fast Non
Non--realistic

• Gouraud shading
• Phong shading
• Ray tracing
• Radiosity
• Ray tracing + radiosity Slow Realistic

10/37

5
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Scan conversion / Graphics Pipeline

Procedura iterativa (algoritmo)(la Graphics Pipeline), 
applicata su tutte le entità grafiche della scena.
Le entità grafiche complesse vengono approssimate 
mediante triangoli o quadrangoli (mesh).
La colorazione delle superfici avviene per interpolazione del 
livello di colore calcolato agli spigoli dei triangoli.

11

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Scan conversion / Graphics Pipeline:
principali limitazioni
EE’ applicabile soltanto ad un modello 3D che 
applicabile soltanto ad un modello 3D che
approssima quello di partenza;
La reale risoluzione è dipendente dall’hardware
Non c’è possibilità di controllare le ombre e penombre 
e riflessioni. 
ifl i i
Che cosa succede se ci sono più triangoli che pixels?

12

6
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Graphics Pipeline:
requisiti

Per qualsiasi tipo di colorazione delle superfici 
(shading = ombreggiatura) occorre innanzitutto 
posizionare il tipo di sorgente luminosa
posizionare il tipo di sorgente luminosa ed il
ed il
punto di vista dell’osservatore.

13

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Graphics pipeline
Tassellazione
ITERATIVO

Trasformazioni
globali
Illuminazione
Trasformazioni
di vista
HSR (Hidden Surface Removal)

Proiezione 2D

Luci (e modello Viewport mapping Framebuffer


di illuminazione) e (struttura dati
Rasterizzazione nella memoria Display
Camera (e
parametri di vista) Graphics Pipeline della scheda video)

14

7
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Preparazione del modello 3D (Tessellation)

I modelli complessi vengono semplificati mediante


riduzione ad insiemi di triangoli di varie dimensioni che
approssimano il modello originale.

15/37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Trasformazioni globali
Trasformazioni (spostamento, scalatura, rotazioni…) 
(p )
che avvengono durante la modellazione.
Sono in coordinate omogenee e nel sistema di 
coordinate globali (Model Space), che è comune a 
tutte le primitive grafiche della scena.

16

8
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Illuminazione: tipi di luce
è una luce diffusa che
• Luce ambiente illumina la scena in ogni
direzione

la sorgente luminosa è
• Luce distante all’infinito, per cui i
raggi sono paralleli

è una sorgente luminosa


• Luce puntiforme che
h irradia
i di in
i tutte
t tt le
l
direzioni
è una sorgente luminosa che
emette un cono luce
direzionale
• Luce diretta Spot è una luce diretta, con sorgente
non puntiforme e cono molto stretto

17

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Intensità di colorazione della 
superficie (shading)
sorgente scena

normale alla superficie


b
pixel

piano
p
immagine

I a cos(b)
osservatore
18/37

9
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Algoritmi di illuminazione:
Constant shading

Nessun dipendenza
rispetto alla sorgente
di luce e alla
posizione relativa
osservatore/oggetto.
t / tt

19

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Algoritmi di illuminazione.
Variazione della colorazione solo tra poligoni:
Flat shading
• Ogni poligono ha una colorazione costante sulla sua superficie in funzione 
g p g p
soltanto della posizione della sorgente luminosa.

• Tutti i pixel sullo stesso poligono hanno la stessa intensità di colore.
Sorgente luminosa
Caratteristiche
• Veloce e semplice.

• La colorazione di ogni singolo


poligono è indipendente dagli altri
adiacenti.

• La qualità grafica è scarsa perchè


appare in modo sfaccettato.

20

10
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Flat Shading

21

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Algoritmi di illuminazione.
Variazione della colorazione all’interno di 
ciascun  poligono

• Miglioramento considerevole della qualità dell’ombreggiatura (non sono più


visibili spigoli nelle superfici curve che sono state approssimate dai
poligono/triangoli). Gouraud shading
Phong shading
• Complicazione
p computazionale
p maggiore.
gg

Molti sistemi CAD permettono di impostare il livello di raffinamento della


discretizzazione in modo da ridurre il carico computazionale.

22

11
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Algoritmi di illuminazione.
Modello della luce semplificato
I  R (l n)  I0  R l Cos  I0
Usato sia per Gouraud
dove:
sia per Phong
I = intensità della luce nel punto P
n = vettore normale alla superficie (può essere calcolato per
interpolazione di normali vicine in modo da migliorare la qualità
visiva in poligoni adiacenti)
R = coefficiente di riflessione
l = vettore di direzione della luce rispetto alla superficie
I0 = termine relativo luce ambiente (luce di fondo)
 = angolo tra normale e direzione luce
23

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Gouraud shading: calcolo delle normali
Le superfici complesse vengono
approssimante con primitive n4
n1
geometriche più semplici
(poligoni o triangoli). nD
Il colore però calcolato sulla
base delle normali naturali dei D
singoli poligoni produce A n3
scalature di colore non gradite. C n2
Si attua allora il calcolo delle B
normali mediante interpolazione n1 + n2 + n3 + n4
in modo da migliorare la nD =
gradazione di colore finale. 4

24

12
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Gouraud shading
Linea di scansione ID
D

IA Ia Ip Ib IA (yD - yS) + ID (yS - yA)


Ia =
A yD - yA

C IC ID (yS - yC) + IC (yD - yS)


Ib=
yD - yC
B
IB Ia (xb - xS) + Ib (xS - xa)
Modello di riflessione
Ip=
applicato ad ogni vertice xb - xa
IA = f(nA,...)
25

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Gouraud shading: problemi
 Differenze di illuminazione all’interno di un
poligono che non interessano i vertici
 Continuità di variazione luminosa lineare che
provoca l’effetto banda (Mach Banding)

26

13
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Modelli Gouraud‐shaded

27

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Phong Shading 
• Si calcolano le normali per ciascun vertice

• Nei vertici comuni a più poligoni si calcola la


media delle normali

• In
I ciascun
i pixel
i l sii calcolano
l l l normalili
le
interpolando linearmente le normali ai quattro
vertici del poligono di appartenenza

28

14
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Phong Shading 
na np nD
nA nb
D
nA (yD - yS) + nD (yS - yA)
na =
nC yD - yA
A

nD (yS - yC) + nC (yD - yS)


nB C
nb=
yD - yC
B
na (xb - xS) + nb (xS - xa)
Modello di riflessione np=
applicato ad ogni pixel xb - xa

Ip = f(np,...)
29

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Modelli Phong‐shaded

30

15
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Trasformazioni di vista

Trasformazioni di rototraslazione per allineare i


Trasformazioni di rototraslazione per allineare i 
vertici dei poligoni al vettore di vista.
Il vettore di vista è ortogonale al piano di 
proiezione.
proiezione
In questo modo posso valutare la visibilità delle 
superfici.
31

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Oggetto da visualizzare

Piano di proiezione

Vettore di vista

32

16
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

HSR (Hidden Surface Removal)

IlIl Clipping è la procedura con la quale è possibile 
Clipping è la procedura con la quale è possibile
escludere direttamente dall’elaborazione numerosi 
poligoni che non verranno visualizzati nella scena 
finale 
(es la parte posteriore di una montagna)
(es. la parte posteriore di una montagna)
(oppure i poligoni che stanno fuori dalla piramide di 
vista dell’osservatore)
33

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

HSR (Hidden Surface Removal)
Frustum clipping
Eliminazione delle primitive grafiche esterne alla 
Eliminazione delle primitive grafiche esterne alla
piramide di vista (frustum).

Backface clipping
Ogni poligono (triangolo) ha due facce: sicuramente 
una delle due è non visibile e quindi la escludo dalla 
lista delle facce da elaborare.
34

17
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

HSR:  backface culling

  0 sup
p erficie visibile
AB
0 sup erficie non visibile

A = vettore normale alla


superficie
B = vettore della direzione
della telecamera

35

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

HSR (Hidden Surface Removal)
Polygon clipping: eliminazione di parte di primitive 
ggrafiche perchè nascoste parzialmente da altre.
p p

Poligoni che si
sovrappongono
Osservatore

Poligoni che si
intersecano

Osservatore
36

18
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Proiezioni 2D
Trasformazioni di proiezione. I vertici dei poligoni 
tassellati vengono proiettati dal sistema di 
coordinate vista al sistema bidimensionale dello 
schermo (3D  2D).
La proiezione può essere
ortogonale o prospettica.
37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Proiezioni 2D

38

19
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Proiezioni 2D

Proiezione ortogonale
Si tratta di una trasformazione per cui
escludiamo soltanto la coordinata globale Z.

0 0 0 0 1 0 0 0 1 0 0 0
     
0 1 0 0 0 0 0 0 0 1 0 0
Px  Py 
 Pz  
0 0 1 0 0 0 1 0 0 0 0 0
     
0 0 0 1 0 0 0 1 0 0 0 1

39

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Proiezioni 2D (x, y, z)

Proiezione prospettica +Z

(xproj, yproj, 0)
Il Centro di Proiezione giace sull’asse Z (nella 
direzione negativa) con il piano di proiezione 
coincidente con il piano x‐y.
(0, 0, -d)
xprojected = xd/(d+z) = x/(1+(z/d))
-Z
yprojected = yd/(d+z) = y/(1+(z/d))

1 0 0 0  x   x  x /(1  ( z / d ))  Proiezione prospettica


       ad un solo fuoco.
0 1 0 0  y   y
   y /(1  ( z / d ))  In generale la
0 0 0 0  z   0   0 
proiezione prospettiva
      
0 0 1/ d 1  1  1  ( z / d )   1  è a tre fuochi.

40

20
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Proiezioni 2D
Proiezione prospettica a tre fuochi
Scrittura matriciale
complessa

Prospettiva Prospettiva Prospettiva


a tre fuochi a due ad un fuoco
fuochi (centrale)

41

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

42

21
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Viewport mapping

Mappatura dell’immagine elaborata dalla pipeline sulla


finestra attiva del sistema operativo.

43

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Rasterizzazione
Si tratta del processo di disegno delle primitive nel framebuffer.
L operazione si compie mediante un algoritmo di scrittura del
L’operazione
colore dei pixel e mediante alcune operazioni per-pixel (ovvero di
correzione e calcolo ulteriore del colore del pixel)(es. alpha…).

44

22
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

I materiali
Insieme di parametri che definiscono il comportamento 
della superficie nei confronti della luce che la investe.
f f

Il colore
Si tratta del colore di fondo della superficie,
considerato uniforme ed espresso in coordinate
RGB.

45/37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

La diffusione
Il colore può non essere diffuso uniformemente.
Questo canale ne esprime la disuniformità.

La trasparenza
La superficie può lasciar passare una parte dei
raggi luminosi che la colpiscono.

La riflessione (specularità)
La superficie può riflettere una parte dei raggi
luminosi che la colpiscono.

46/37

23
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

La goffratura (bump mapping)


Mediante questo parametro si accentua o meno la
rugosità della superficie.

Il canale alpha
La porzione di superficie interessata da questo
canale viene “sottratta” al resto dell’immagine.

La self illumination
Si tratta della capacità della superficie di generare
luminosità intrinseca.

…e molti altri ancora…


47/37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Texture mapping

Tecnica che prevede la sovrapposizione ad un 
Tecnica che prevede la sovrapposizione ad un
poligono o gruppo di poligoni di una bitmap 
(immagine fotografica)

Grandi effetti di realismo


48/37

24
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Texture mapping
Immagine bitmap
(foto) (JPG)

V U

Modello 3D con materiali
e mappatura UV

49/37

Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio


Prof. Ing. Alfredo Liverani

Texture mapping
Tutti i punti di una texture possono essere individuati per mezzo di 
una coppia di coordinate UV infatti le texture sono bidimensionali 
una coppia di coordinate UV, infatti le texture sono bidimensionali
(u e v sono due parametri che variano nell'intervallo tra 0 e 1, 
perciò si dice UV e non XY). Le coordinate UVW descrivono invece 
una superficie. Una volta che sia generata la corrispondenza delle 
coordinate UV della texture alle coordinate UVW della superficie, 
p ,
la texture aderisce alla superficie anche quando quest'ultima 
viene deformata.

50/37

25
Laboratorio CAD e Informatica T – CdL Ing. Ambiente e Territorio
Prof. Ing. Alfredo Liverani

Animazione

Proiezione di più immagini rendered 
concepite e intervallate in maniera tale da 
ottenere effetti di movimento
ottenere effetti di movimento

51/37

26

Potrebbero piacerti anche