Sei sulla pagina 1di 57

06/05/2008

La visualizzazione realistica

Prof. Maurizio Muzzupappa

La simulazione visiva
Negli ultimi venti anni, la simulazione visiva ha avuto un p g progresso impressionante sia per la capacit di rappresentare p p p pp anche in modo dinamico, processi, modelli, etc. sia per il grado elevatissimo di verosimiglianza che ha saputo raggiungere. La verosimiglianza di una immagine sintetica va sotto il nome di fotorealismo.

Prof. Maurizio Muzzupappa

06/05/2008

Il fotorealismo
Il fotorealismo nella computer grafica la simulazione, riproduzione ed interpretazione di tutti gli stimoli che i nostri sensi percepiscono nell'ambiente che ci circonda. Simulazione in quanto si cerca di riprodurre alcuni comportamenti e caratteristiche del mondo reale col fine di "ingannare" l'occhio umano facendogli credere che ci che sta guardando effettivamente reale; riproduzione in quanto nella ricostruzione del reale vi l'attenzione ad ogni minimo particolare, ottenendo cos un risultato molto l d l l simile ad una fotografia; infine, interpretazione perch nella realizzazione fotorealistica presente lo stile dell'autore, la sua personale interpretazione di ci che vede e quindi un presupposto creativo.
Prof. Maurizio Muzzupappa

Realismo dellimmagine
Realistica unimmagine di sintesi che produce lo p g stesso stimolo visivo prodotto dallimmagine della scena reale, riprodotta sullo stesso supporto, e osservata nelle medesime condizioni.

Prof. Maurizio Muzzupappa

06/05/2008

Realismo dellimmagine

DalModello3DalModelloRenderizzato
Prof. Maurizio Muzzupappa

Realismo dellimmagine

Prof. Maurizio Muzzupappa

06/05/2008

I livelli di rendering
Nella sintesi delle immagini da modelli geometrici 3D possibile caratterizzare lespressivit in una scala crescente dal meno al pi iconico, dal meno al pi realistico, dal pi semplice al pi complesso. E possibile organizzare, in livelli crescenti di iconicit, diversi metodi di rappresentazione (dal pi astratto al pi simbolico):
1. 2. 3. 4.

Proiezioni ortogonali o prospettiche di figure Wire Frame Wire-Frame, Hidden Surface Flat Shading o Smooth Shading, Fotorealismo.

Prof. Maurizio Muzzupappa

Visualizzazione WF
Il primo livello di resa visiva la tecnica detta a fil di ferro con la quale la forma 3D, descritta con un modello geometrico, geometrico viene raffigurata mediante linee di contorno contorno. In questa modalit sono visibili anche le linee che sarebbero in teoria invisibili, in quanto nascoste da facce che dovrebbero essere opache (e non trasparenti).

Prof. Maurizio Muzzupappa

06/05/2008

Visualizzazione Hidden surface


Per risolvere le ambiguit percettive, indotte dalla presenza di linee che d li h dovrebbero essere mascherate d f bb h t da facce opache, occorre h risolvere il problema della rimozione delle facce nascoste.

Prof. Maurizio Muzzupappa

Back Face Culling


Una prima semplificazione nella determinazione delle superfici visibili consiste nell'eliminare le nell eliminare facce "posteriori" di un solido mediante lalgoritmo del Back-Face Culling (Bfc). In tal modo possibile molto semplicemente ridurre il carico di lavoro richiesto per la rimozione delle d ll superfici nascoste eliminando tutti i poligoni f l d l il cui vettore normale orientato verso il semispazio opposto allosservatore.
Prof. Maurizio Muzzupappa

06/05/2008

Back Face Culling


Come determinare le facce autonascoste?
Supponendo di aver definito i poligoni in maniera tale che le normali alle loro superfici siano tutte dirette verso lesterno del poligono, le facce che hanno una normale che punta verso losservatore sono visibili, quelle con normale che punta via dallosservatore sicuramente non lo saranno.

Prof. Maurizio Muzzupappa

Back Face Culling

Lo scopo quello di verificare se tale angolo maggiore di 90: in questo caso infatti, la faccia rivolta lontano dallosservatore e pu essere eliminata. Se invece langolo g minore o uguale a 90, la faccia allora visibile e non pu essere scartata.

Prof. Maurizio Muzzupappa

06/05/2008

Visualizzazione Hidden surface


La tecnica pi semplice per determinare quali oggetti siano visibili e quali oscurati quella dello z-buffering. Tale tecnica richiede la memorizzazione di un dato addizionale per ogni pixel generato: la sua distanza dallosservatore (coordinata z). L'area di memoria della scheda video in cui questo dato viene memorizzata detta z-buffer.

Prof. Maurizio Muzzupappa

Visualizzazione Hidden surface

Prof. Maurizio Muzzupappa

06/05/2008

Z-Buffering
L'algoritmo processa singolarmente tutte i i l poligoni visibili presenti nella scena. Per ogni poligono vengono determinati i pixel da essa occupati. ti Per ogni pixel viene calcolata la distanza dall'osservatore.
Prof. Maurizio Muzzupappa

z1

z2

z3

Z-Buffering
Z- buffer
scena vuota I triangolo

Z Z- buffer
dopo il I triangolo

ogni pixel rappresentato con il suo colore mentre il valore della z dato dal numero allinterno del pixel.
Prof. Maurizio Muzzupappa

06/05/2008

Z-Buffering
Z- buffer
scena vuota I triangolo

Z Z- buffer
dopo il I triangolo

Z- buffer
dopo il II triangolo II triangolo

ogni pixel rappresentato con il suo colore mentre il valore della z dato dal numero allinterno del pixel.
Prof. Maurizio Muzzupappa

Z-Buffering
Ogni volta che un nuovo poligono viene processato, per tutti i nuovi pixel occupati da questo, vengono confrontate le distanze calcolate con quelle precedentemente memorizzate nello z-buffer. Se la distanza del nuovo pixel minore del valore presente nello z-buffer, questo sostituisce il punto precedente, i quanto pi vicino all'osservatore. S d in i i i ll' Se invece la distanza maggiore, il nuovo pixel viene scartato in quanto nascosto da quello gi presente sullo schermo.
Prof. Maurizio Muzzupappa

06/05/2008

BFC e Z-buffering
Il procedimento di back-face culling consente in consente, media di dimezzare il tempo necessario a fare il rendering degli oggetti solidi dato che, sempre in media, circa la met delle facce di un poliedro saranno back-facing e quindi il loro rendering sarebbe comunque inutile. Lalgoritmo di BFC e z-buffering sono spesso utilizzati insieme durante il processo di visualizzazione
Prof. Maurizio Muzzupappa

Shading
La determinazione del colore che compete a ciascuna faccia un problema centrale nella simulazione visiva. Per poter mettere i evidenza l singole f tt in id le i l facce, i di id individuare l ombre le b proprie e dare maggiore senso di profondit alla scena, necessario utilizzare un modello di illuminazione, ovvero un modello matematico che descrive, in modo pi o meno semplificato, linterazione tra la luce e gli oggetti della scena.

Prof. Maurizio Muzzupappa

10

06/05/2008

Shading
Esistono due grandi categorie di modelli di illuminazione: i modelli locali e i modelli globali. I primi descrivono in modo semplificato le caratteristiche delle sorgenti di luce, degli oggetti della scena e della loro reciproca interazione. I secondi considerano in modo molto pi accurato le interazioni che avvengono tra le sorgenti di luce, gli oggetti e la luce riflessa dagli oggetti stessi

Prof. Maurizio Muzzupappa

La luce e le superfici
La radiazione che incide su un corpo solido pu essere in parte : 1. assorbita; 2. trasmessa attraverso l'oggetto (trasparente); 3. riflessa, sia in modo diffuso che speculare.

Prof. Maurizio Muzzupappa

11

06/05/2008

La radiazione assorbita
La radiazione assorbita viene trasformata in calore. Dal punto di vista ottico-visivo, se tutta la radiazione incidente fosse assorbita, il corpo non sarebbe visibile, cio si avrebbe a che fare con un "corpo nero". La radiazione assorbita quella che meno ci interessa, anche se utile osservare che i corpi non assorbono in modo uguale su tutte le lunghezze d'onda incidenti.
Prof. Maurizio Muzzupappa

La radiazione assorbita

ASSORBIMENTO 100% 50% 0%


Prof. Maurizio Muzzupappa

12

06/05/2008

La radiazione trasmessa
La radiazione incidente pu essere in parte trasmessa dentro il solido quando quest'ultimo quest ultimo trasparente.

Prof. Maurizio Muzzupappa

La radiazione trasmessa
La Trasparenza

Prof. Maurizio Muzzupappa

13

06/05/2008

La radiazione riflessa
La riflessione della luce su una superficie data da due componenti: diffusiva e speculare. p p La radiazione diffusa si pu pensare come assorbita dallo strato esterno del corpo, per essere poi riemessa in tutte le direzioni. La radiazione riflessa specularmente non attraversa la superficie esterna, ma viene rimandata immediatamente nel piano individuato dalla normale alla superficie nel punto considerato e dalla direzione della radiazione incidente.
Prof. Maurizio Muzzupappa

La radiazione riflessa
La componente di riflessione speculare pu essere osservata su superfici lucide. E definito come l'highlight. L'highlight causatodalla riflessionespeculare,mentrela riflessionesulrestodellasuperficie dovutaallariflessionediffusiva. dovuta alla riflessione diffusiva. Secispostiamoeguardiamo loggettodaun'altraangolazione possiamonotarecheanche l'highlightsimuove.
Prof. Maurizio Muzzupappa

14

06/05/2008

La radiazione riflessa
La Diffusione dominante su una superficie con tante piccole asperit. La luce viene riflessa in tutte le direzioni. La riflessione Speculare tipica delle superfici lisce. Questo implica che i raggi dispersi da p p Q p gg p ciascun punto della superficie siano diretti quasi nella stessa direzione, invece che essere diffusi in modo sparpagliato.

matto, opaco

liscio, lucido
Prof. Maurizio Muzzupappa

La radiazione riflessa

Oggetti con una forte componente speculare, quando sono inseriti allinterno di una scena riflettono anche gli ifl tt h li oggetti circostanti.

Prof. Maurizio Muzzupappa

15

06/05/2008

I modelli di illuminazione

Definire un modello di illuminazione locale significa scegliere unequazione per calcolare l'intensit luminosa in un punto P generico dello spazio, in funzione dell'intensit della radiazione incidente e delle caratteristiche geometriche e fisiche della superficie. L obiettivo L'obiettivo di un modello di illuminazione quello di calcolare l'intensit luminosa in un punto della scena, data una certa configurazione delle sorgenti luminose.

Prof. Maurizio Muzzupappa

Modello di Riflessione Diffusa da Sorgente Puntiforme


Il Modello di LAMBERT si basa sulla legge del coseno. Se un corpo un diffusore perfetto ed IL lintensit l intensit luminosa incidente nel punto P della sua superficie, lintensit di radiazione diffusa sar proporzionale al coseno dell'angolo tra la normale alla superficie nel punto e la direzione di incidenza L
Id(p)=Kd IL cos

Prof. Maurizio Muzzupappa

16

06/05/2008

Modello di Riflessione Diffusa da Sorgente Puntiforme

N IL

Prof. Maurizio Muzzupappa

Modello di Riflessione Diffusa da Sorgente Puntiforme


Con il modello di Lambert si ottengono immagini molto contrastate in quanto le parti illuminate riflettono la luce mentre le parti in q p p ombra appariranno molto scure. La luce ambiente (Ia) illumina tutta la scena e permette di dare chiarezza alla scena. Si usa per attenuare le ombre, che altrimenti sarebbero troppo marcate e poco realistiche (effetto penombra).

Id(p)=Kd IL cos + Ka Ia

Prof. Maurizio Muzzupappa

17

06/05/2008

Modello di Riflessione Speculare da Sorgente Puntiforme


Il limite del modello di LAMBERT che non permette di considerare il riflesso speculare d ll superfici, ti i id ifl l delle fi i tipico delle superfici metalliche. Phong ha introdotto nel suo modello anche la riflessione speculare che d luogo al riflesso interspeculare (highlight). Lhighlight dipende dalla posizione dellosservatore rispetto alloggetto. La superficie non riflette pi con uguale intensit in tutte le direzioni ma ha una direzione privilegiata e se losservatore guarda proprio in quella direzione vedr una maggiore intensit di luce.
Prof. Maurizio Muzzupappa

Modello di Riflessione Speculare da Sorgente Puntiforme

La quantit di energia riflessa specularmente q g p dipende fortemente dalla lunghezza d'onda della radiazione incidente e dall'angolo tra direzione di riflessione e direzione di vista. Is(p)=Ks IL cos
n

Prof. Maurizio Muzzupappa

18

06/05/2008

Modello di Riflessione da Sorgente Puntiforme


Le due espressioni viste per le radiazioni riflesse diffuse e le radiazioni riflesse specularmente, possono sovrapporsi, in quanto gli oggetti si comportano normalmente sia come diff l i diffusori che come specchi. i h hi

IL

I (p)=Kd IL cos + Ka Ia+ Ks IL cosn


Prof. Maurizio Muzzupappa

Algoritmi di Shading

Se i S si applicano i modelli di riflessione appena visti li d lli ifl i i ti ad una forma poliedrica che approssima una superficie curva otteniamo una figura a facce piane che assomiglier ben poco ad una superficie curva. In questi casi si parla di Flat Shading (o ombreggiatura piatta).

Prof. Maurizio Muzzupappa

19

06/05/2008

Flat Shading

Il flat shading il pi semplice di tutti: si colora una faccia con un colore. Per migliorare la resa visiva necessario aumentare il numero di poligoni che compongono la superficie delloggetto.
Prof. Maurizio Muzzupappa

Flat Shading
Vantaggi: semplicit e velocit Svantaggi: Si percepiscono distintamente i poligoni. La normale, infatti, varia e quindi anche il colore associato a triangoli vicini.
Prof. Maurizio Muzzupappa

20

06/05/2008

Gouraud Shading
Per risolvere il problema si ricorre ad una tecnica di smoothing del colore. Il Gouraud Shading consiste nellinterpolare i valori di colore di ogni superficie di un oggetto una volta che siano stati calcolati i valori di colore nei due punti estremi di ogni linea di scansione.

Prof. Maurizio Muzzupappa

Gouraud Shading

Flat Shading

Gouraud Shading
Prof. Maurizio Muzzupappa

21

06/05/2008

Gouraud Shading

N1

N2

N3 N Ni

Sicalcolalanormale medianeivertici comuniapitriangoli

Prof. Maurizio Muzzupappa

Gouraud Shading
Perogniverticedelpoligonovienecalcolatalintensitdiluceriflessa. Lungociascunlatodelpoligonovengonointerpolatitalivaloridilucetraun L i l d l li i l i li l i di l verticeel'altro.Adesempio,conriferimentoallafigura,conoscendoitre coloriaitrevertici(rosso,verdeeblu)possibiledeterminareilcolore allinternodeltriangolo.

scanline

Icolori(laluceriflessadiffusa)dentroaltriangolovengonointerpolati attraversolelineediscansione(scanlines)
Prof. Maurizio Muzzupappa

22

06/05/2008

Gouraud Shading

Il risultato il poligono ombreggiato con il metodo Gouraud

Prof. Maurizio Muzzupappa

Gouraud Shading

Vantaggi: attenua il salto di colore tra facce adiacenti, semplice e veloce ( solo poco pi oneroso del flat shading). Svantaggi: Non elimina completamente la percezione dei poligoni e non rende bene le riflessioni speculari (highlights).
Prof. Maurizio Muzzupappa

23

06/05/2008

Phong Shading
Permette una resa migliore del caso precedente, ma richiede maggior tempo di calcolo. Si calcolano le normali per ciascun vertice Nei vertici comuni a pi poligoni si calcola la media delle normali In ciascun pixel si calcolano le normali interpolando linearmente le normali ai quattro vertici del poligono di appartenenza
Prof. Maurizio Muzzupappa

Phong Shading
nA n1 nC n2 scanline n1 nP n2

nB

Il modello di riflessione pu, in tal modo, essere applicato ad ogni pixel appartenente al triangolo,

I (p)=Kd IL cos + Ka Ia+ Ks IL cosn


Si pu cos definire per ogni pixel lesatto colore.
Prof. Maurizio Muzzupappa

24

06/05/2008

Phong Shading

Vantaggio: buon realismo. Svantaggi: circa 5 volte pi lento di Gouraud. Migliore qualit dellhighlight
Prof. Maurizio Muzzupappa

Phong Shading

Highligh secondo Gouraud

Highligh secondo Phong

Prof. Maurizio Muzzupappa

25

06/05/2008

Le Texture

Nella N ll continua ricerca d l realismo visivo, un grande aiuto ti i del li ii d i t deriva dallaggiunta di dettagli alle superfici degli oggetti, in modo da conferire loro lapparenza di materiali particolari come legno, marmo, decalcomanie, superfici irregolari o rugose. La tecnica dellapplicazione di tessiture sulle superfici degli oggetti di una scena una delle pi efficaci per dare un effetto di grande realismo visivo, spesso molto pi efficace dei soli modelli di illuminazione (Lambert e Phong).

Prof. Maurizio Muzzupappa

Le Texture
Le texture vengono utilizzate per rendere realistiche le superfici dei modelli 3D, evidenziando i dettagli e fornendo alloggetto quelle caratteristiche fisiche tipiche del mondo reale. Il metodo consiste nel modificare il valore di colore di ogni punto su una superficie rispettando la configurazione dellimmagine che si vuole associare alla superficie.

Prof. Maurizio Muzzupappa

26

06/05/2008

Le Texture

Scena senza le texture

Scena con le texture

Prof. Maurizio Muzzupappa

Le Texture

Texture procedurali sono algoritmi matematici procedurali, matematici, cio espressioni dipinte sulla superficie in uno spazio tridimensionale. Queste texture sono generate dal computer attraverso linserimento di parametri specifici Texture campionate sono immagini 2D acquisite o disegnate, con appositi programmi, ed attribuite alla superficie delloggetto.

Prof. Maurizio Muzzupappa

27

06/05/2008

Le Texture procedurali

Prof. Maurizio Muzzupappa

Le Texture campionate

PIXEL TEXEL

Prof. Maurizio Muzzupappa

28

06/05/2008

Le Texture campionate
Le texture campionate pongono due ordini di problemi: il primo deriva dal fatto che non sempre semplice proiettare un rettangolo piano (una bitmap) su una superficie curva; il secondo problema riguarda il metodo con cui l d bl i d t d i la tessitura viene associata.

Prof. Maurizio Muzzupappa

Le Texture campionate
La mappatura planare

La mappatura cilindrica pp

Prof. Maurizio Muzzupappa

29

06/05/2008

Le Texture campionate

La L mappatura sferica t f i

Prof. Maurizio Muzzupappa

Le Texture campionate
La mappatura cubica

La mappatura UV

Prof. Maurizio Muzzupappa

30

06/05/2008

Le Texture campionate

Tessitura applicata ad una porzione di superficie (decalcomania)

Tessitura ripetuta pi volte (tiling)


Prof. Maurizio Muzzupappa

Le Texture
I motori di rendering supportano i seguenti tipi di texture: Texture di colore: definiscono i colori di superficie, come nel caso di immagini dipinte su un oggetto. Texture di diffusione: definiscono il livello di diffusione della superficie. Texture di opacit: specificano le aree di opacit e trasparenza. Texture di specularit: specificano le aree di specularit rispetto alla sorgente luminosa.
Prof. Maurizio Muzzupappa

31

06/05/2008

Le Texture
I motori di rendering supportano i seguenti tipi di texture: Texture di riflessione: simulano una scena riflessa sulla superficie di un oggetto lucido (environment map). Texture di contrasto: creano un effetto a sbalzo o a bassorilievo (bump map).

Prof. Maurizio Muzzupappa

Le Texture

Texture di colore

Texture di opacit

Prof. Maurizio Muzzupappa

32

06/05/2008

Le Texture
Texture di contrasto

Prof. Maurizio Muzzupappa

Quattro passi fondamentali per eseguire un rendering

Assegnare i materiali Definire le sorgenti di luce Impostare lambiente p Eseguire il Rendering


Prof. Maurizio Muzzupappa

33

06/05/2008

Le luci in CG

Dovendo modellare una scena occorre non solo modellarne la geometria, ma anche gestire opportunamente le sorgenti di luce. Queste possono essere poste all'infinito o in un punto al finito. Di conseguenza i raggi luminosi saranno paralleli o divergenti.

Prof. Maurizio Muzzupappa

Le luci in CG
Le sorgenti di luce possono essere puntiformi o g p p estese. La quantit di radiazione pu essere emessa in tutte direzioni; oppure si pu pensare che la radiazione emessa dalla sorgente abbia una direzione preferenziale. Si parla in questo caso di sorgenti direzionali. Si possono poi avere modelli con una sola sorgente o con un numero arbitrario di sorgenti.

Prof. Maurizio Muzzupappa

34

06/05/2008

Le luci in CG
I programmi di rendering gestiscono differenti tipi di sorgenti luminose: La luce ambiente cio che illumina tutta la ambiente, scena e permette di dare chiarezza alla scena, ma comunque non permette di dare effetti avanzati di sfumature ed ombre

Prof. Maurizio Muzzupappa

Le luci in CG
I programmi di rendering gestiscono differenti tipi di sorgenti luminose: La luce spot, che pu essere illustrata come il spot fascio di luce uscente da un faro di un auto, cio che genera un cono di luce. Essa ha poi delle altre propriet, cio una zona in cui l'illuminazione piena, ed una in cui sfuma dall'illuminazione piena all'ombra.
Prof. Maurizio Muzzupappa

35

06/05/2008

Le luci in CG
I programmi di rendering gestiscono differenti tipi di sorgenti luminose: La luce omnidirezionale (point), ossia una (point) sorgente luminosa puntuale dal quale partono i raggi in tutte le direzioni nello spazio. Posizionata tale sorgente in un punto, i raggi si diffonderanno nello spazio radialmente.

Prof. Maurizio Muzzupappa

Le luci in CG
I programmi di rendering gestiscono differenti tipi di sorgenti luminose: La luce a raggi paralleli ossia una direzione paralleli, da cui provengono, parallelamente, i raggi solari.

Prof. Maurizio Muzzupappa

36

06/05/2008

Le luci in CG

Luce distant

Luce point

Luce spot
Prof. Maurizio Muzzupappa

Le luci in CG
Ogni tipologia ha il suo utilizzo: per simulare l'ill i i i l l'illuminazione di un f faro si usa i una luce spot (proiettore), per simulare una lampadina, si usa una sorgente luminosa omnidirezionale per simulare il sole, si usa una sorgente gg p luminosa a raggi paralleli. si usa la luce ambiente per attenuare le ombre derivanti dall'uso delle altre tipologie di luci, che altrimenti sarebbero troppo marcate e poco realistiche (effetto penombra).
Prof. Maurizio Muzzupappa

37

06/05/2008

Quattro passi fondamentali per eseguire un rendering

Assegnare i materiali Definire le sorgenti di luce p Impostare lambiente Eseguire il Rendering


Prof. Maurizio Muzzupappa

Impostazione della scena

Prof. Maurizio Muzzupappa

38

06/05/2008

Impostazione della scena

Prof. Maurizio Muzzupappa

Impostazione della scena

Prof. Maurizio Muzzupappa

39

06/05/2008

Impostazione della scena

Prof. Maurizio Muzzupappa

Impostazione della scena

Prof. Maurizio Muzzupappa

40

06/05/2008

Impostazione della scena

Prof. Maurizio Muzzupappa

Impostazione della scena

Prof. Maurizio Muzzupappa

41

06/05/2008

Impostazione della scena

Prof. Maurizio Muzzupappa

Impostazione della scena

Prof. Maurizio Muzzupappa

42

06/05/2008

Modelli di illuminazione globali

I modelli di illuminazione globali permettono di tener conto della luce che proviene indirettamente sugli oggetti della scena. Nei modelli locali, tale contributo approssimato dalla luce ambiente e dallHighlight o ricorrendo a mappe dambiente per simulare specchi piani. I modelli globali, invece, si basano su metodi che cercano di calcolare, calcolare anche se in modo approssimato il campo ottico approssimato, prodotto dalle sorgenti di luce e dallinterazione della radiazione luminosa con lintera scena.

Prof. Maurizio Muzzupappa

Ray Tracing
E la tecnica pi nota per la creazione di immagini Elatecnicapinotaperlacreazionediimmagini fotorealistiche. Gestisceinununicoalgoritmo calcolodelleombre, superficinascoste, superfici nascoste, riflessionideglioggetti rifrazioni.
Prof. Maurizio Muzzupappa

43

06/05/2008

Ray Tracing
Il principio guida che i pixel che appaiono colorati sullo schermo sono il risultato della storia di tutti i raggi luminosi emessi dalle sorgenti di luce, che hanno interagito con la scena riflettendosi, attraverso oggetti o venendo parzialmente o completamente assorbiti.

Prof. Maurizio Muzzupappa

Ray Tracing
Anzich percorrere questa storia partendo dalle sorgenti luminose si preferisce invertire lanalisi percorrendo allindietro la storia dei raggi che giungono allo schermo, trascurando quelli persi nello sfondo.

Prof. Maurizio Muzzupappa

44

06/05/2008

Ray Tracing: le ombre Tracing:

Shadow
Prof. Maurizio Muzzupappa

Ray Tracing: le trasparenze Tracing:

Ladiffrazionedellaluce
Prof. Maurizio Muzzupappa

45

06/05/2008

Ray Tracing

ShadingdiPhong

RayTracing:ombre,riflessioni, trasparenze.
Prof. Maurizio Muzzupappa

Radiosity
Radiosity unalgoritmoglobale,complementaredelraytracing. Tuttelesuperficidellascenasonosuddiviseinframmentichiamatipatch.Ogni patchtrattatocomeunasorgenteluminosa. Lilluminazione(radiosity)inunpatchdatadallaluceemessa(seuna sorgente)edallalucechearrivadatuttiglialtripatchdellascena. Eunalgoritmopesantecomputazionalmente. Ciascunpatchdipendedatuttiglialtriche sonodaessovisibili,eperquestobisogna risolvereilproblemadellarimozione i l il bl d ll i i dellesuperficinascostedalpuntodivista diciascunpatchdellascena.

Prof. Maurizio Muzzupappa

46

06/05/2008

Radiosity

Prof. Maurizio Muzzupappa

La visualizzazione real time


Dei due modelli di illuminazione (locale e globale) il primo calcola i colori da attribuire ad una scena descritta come insieme di poligoni, il secondo genera i colori da attribuire ai singoli pixel. Entrambi i modelli, nel caso di scene complesse, possono dar luogo a tempi di calcolo molto lunghi. Per la visualizzazione in real time si preferisce adottare il modello di illuminazione locale con il supporto delle texture A texture. tale scopo sono stati ideati processori e schede specializzate che operano organizzando lintera scena da visualizzare in una lista di triangoli.
Prof. Maurizio Muzzupappa

47

06/05/2008

La pipeline grafica
tassellation

La catena di operazioni che permette ad ogni triangolo di essere opportunamente processato e visualizzato sul monitor viene chiamata PIPELINE di Visualizzazione (o pipeline grafica).

GEOMETRYSTAGE

transformation clipping lighting

shading

RENDERINGSTAGE

texturemapping zbuffering

RASTERIZZAZIONEEVISUALIZZAZIONE
Prof. Maurizio Muzzupappa

La pipeline grafica
GEOMETRYSTAGE

TESSELATION

Durante questa fase tutti i modelli presenti nella scena vengono tassellati.

Prof. Maurizio Muzzupappa

48

06/05/2008

La pipeline grafica
GEOMETRYSTAGE

TRANSFORMATION
La scena viene ricalcolata in funzione della posizione corrente dei modelli nella scena e rispetto alla posizione del punto di vista .

Prof. Maurizio Muzzupappa

Trasformazioni di coordinate
Trasformazione di view orientation

WCS
Prof. Maurizio Muzzupappa

49

06/05/2008

La pipeline grafica
GEOMETRYSTAGE

CLIPPING
Elimina dalla lista tutti i triangoli che non rientrano nel volume di vista.

WCS NDCS
Prof. Maurizio Muzzupappa

La pipeline grafica
GEOMETRYSTAGE

LIGHTING
Rispetto alle sorgenti luminose presenti nella scena (che possono variare per numero, posizione, tipo, intensit ..), vengono associati, ad ogni triangolo, i parametri del modello di illuminazione prescelto (Lambert o Phong) .

Prof. Maurizio Muzzupappa

50

06/05/2008

La pipeline grafica
RENDERINGSTAGE

SHADING
Vengono applicate le tecniche di shading (Flat, Gouraud o Phong) ai singoli triangoli, calcolando prima il valore del colore/normale sui vertici del triangolo e successivamente interpolando i valori di colore/ normale lungo le linee di scansione.

scanline

Prof. Maurizio Muzzupappa

La pipeline grafica
RENDERINGSTAGE

TEXTUREMAPPING
Letexturevengonomappatesuimodelliperunadefinizionerealisticadellesuperfici. Perognitriangolovengonocosdefiniteleproprietsuperficiali.

Prof. Maurizio Muzzupappa

51

06/05/2008

La pipeline grafica
RENDERINGSTAGE

ZBUFFERING
definisce per ogni pixel appartenente ad ogni triangolo la sua profondit cio la sua distanza dal punto di vista.

Prof. Maurizio Muzzupappa

La pipeline grafica
RASTERIZZAZIONEEVISUALIZZAZIONE

Sulla base delle informazioni registrate nello zbuffer, ogni triangolo viene rasterizzato, cio le informazioni sul colore di ogni suo pixel vengono scritte sul frame buffer (parte della memoria video dedicata alla visualizzazione) per poter essere visualizzate sullo schermo.

Prof. Maurizio Muzzupappa

52

06/05/2008

La pipeline grafica
RASTERIZZAZIONEEVISUALIZZAZIONE

ANTIALIASING
Molte schede grafiche implementano in hardware, durante la rasterizzazione, algoritmi per ovviare al problema dellaliasing (o pixelization), a causa del quale le linee diagonali rappresentate sullo schermo sono scalettate

Prof. Maurizio Muzzupappa

Esempi

Prof. Maurizio Muzzupappa

53

06/05/2008

Esempi

Prof. Maurizio Muzzupappa

Esempi

Prof. Maurizio Muzzupappa

54

06/05/2008

Esempi

Prof. Maurizio Muzzupappa

Esempi

Prof. Maurizio Muzzupappa

55

06/05/2008

Esempi

Prof. Maurizio Muzzupappa

Esempi

Prof. Maurizio Muzzupappa

56

06/05/2008

Esempi

Prof. Maurizio Muzzupappa

Esempi

Prof. Maurizio Muzzupappa

57

Potrebbero piacerti anche