La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Informatica Grafica a.a. 2010-2011 DICGIM – University of Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Effetti fotorealistici.

Presentazioni simili


Presentazione sul tema: "Informatica Grafica a.a. 2010-2011 DICGIM – University of Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Effetti fotorealistici."— Transcript della presentazione:

1 Informatica Grafica a.a DICGIM – University of Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Effetti fotorealistici Prof. Roberto Pirrone 9 giugno 2011

2 Informatica Grafica a.a DICGIM – University of Palermo Sommario Generalità Texture mapping Algoritmo di Fleibush-Levoy-Cook Mip-map Summed area table Bump mapping Ombre proiettate Algoritmo scan-line Algoritmo di Atherton-Wieler-Greenberg Volumi dombra Z-buffer shadow Determinazione delle aree di penombra Trasparenza Blending Screen-door Algoritmo di Mammen 9 giugno 2011

3 Informatica Grafica a.a DICGIM – University of Palermo Generalità Una scena resa solamente attraverso lo shading presenta un grado di realismo modesto. Per ottenere un elevato grado di realismo si può: Applicare delle trame o tessiture alle superfici Creare rugosità sulla superficie Applicare le ombre tra gli oggetti Tenere conto della trasparenza delle superfici Tener conto delle riflessioni tra oggetti 9 giugno 2011

4 Informatica Grafica a.a DICGIM – University of Palermo Texture mapping Il processo di texture mapping consiste nellapplicare unimmagine (texture map) definita in un proprio spazio di coordinate (u,v) sui poligoni della superficie, eventualmente ripetendola su tutta la superficie. Per diminuire lonere computazionale si effettua il mapping inverso dai pixel dellimmagine a quelli dello spazio della texture map. La trasformazione complessiva tiene conto della proiezione sullo schermo e di una legge di mappatura della tetxure su un singolo poligono (definizione esplicita delle texture coordinates di ogni vertice). 9 giugno 2011

5 Informatica Grafica a.a DICGIM – University of Palermo Texture mapping 9 giugno 2011

6 Informatica Grafica a.a DICGIM – University of Palermo Texture mapping Il procedimento di mapping inverso è analogo a quello visto per le tecniche di warping. Linterpolazione è basata sul filtraggio spaziale dellimmagine di ingresso scegliendo unopportuna maschera di convoluzione per pesare i pixel della texture che ricadono nel quadrilatero in cui il pixel viene trasformato. 9 giugno 2011

7 Informatica Grafica a.a DICGIM – University of Palermo Algoritmo di Fleibush-Levoy-Cook 9 giugno 2011

8 Informatica Grafica a.a DICGIM – University of Palermo Algoritmo di Fleibush-Levoy-Cook Si sceglie una maschera di convoluzione, tipicamente molto piccola: di solito si usa una gaussiana con supporto circolare e raggio 2 pixel. Ripeti per ogni pixel dello spazio destinazione interno allimmagine trasformata Mappa nello spazio sorgente tutto il rettangolo includente il supporto del filtro centrato sul pixel Considera il minimo rettangolo che include il quadrilatero ottenuto nello spazio sorgente Il rettangolo viene sottoposto a clipping con gli estremi dellimmagine sorgente // texture Trasforma i pixel dellimmagine sorgente interni al rettangolo clippato, usando la trasformazione diretta, verso limmagine nello spazio destinazione ottenendo un quadrilatero Scarta i pixel che ricadono allesterno del rettangolo includente il supporto del filtro centrato sul pixel destinazione Se il rettangolo includente il supporto del filtro ha intersezione non vuota con limmagine stessa, allora il valore del pixel si otterrà da quello calcolato, in proporzione al volume del filtro che è sotteso dallarea di intersezione tra limmagine ed il rettangolo includente Fine Ripeti 9 giugno 2011

9 Informatica Grafica a.a DICGIM – University of Palermo Mip map Una mip-map è una struttura dati che conserva la mappa di tessitura scalata a vari livelli. Williams modifica lalgoritmo di Fleibush-Levoy-Cook ed individua la zona della mip map (e quindi scelta l'immagine da utilizzare) che più corrisponde al numero dei pixel della texture che ricadono nella trasformazione inversa del rettangolo includente, il filtro centrato nel pixel. 9 giugno 2011

10 Informatica Grafica a.a DICGIM – University of Palermo Mip map Williams usa un parametro D per definire la dimensione della mappa di da usare in corrispondenza ad un pixel che si mappa in un rettangolo di dimensioni u x v. D=max{ [(u/x) 2 +(v/x) 2 ] 1/2, [(u/y) 2 +(v/y) 2 ] 1/2 } x e y sono le dimensioni del pixel, in genere unitarie. Poiché D è continuo e le mip-maps sono discrete, si interpola linearmente tra una risoluzione e laltra. 9 giugno 2011

11 Informatica Grafica a.a DICGIM – University of Palermo Summed area table Metodo sviluppato da Crow per effettuare un filtraggio veloce. Il valore filtrato è uguale alla somma dei valori della texture che ricadono nel rettangolo includente il filtro. 9 giugno 2011

12 Informatica Grafica a.a DICGIM – University of Palermo Metodi di texture mapping a confronto 9 giugno 2011 (a)Campionamento diretto della texture; (b) mip-map;(c) Summed area table; (b)(d) mip-map e filtro gaussiano a supporto ellittico

13 Informatica Grafica a.a DICGIM – University of Palermo Bump mapping Il bump mapping è una tecnica per ottenere delle rugosità sulla superficie e consiste nel perturbare la distribuzione delle normali secondo una mappa di scostamenti verticali (bump map) B(u,v). Blinn propone un metodo di ricalcolo delle normali perturbate a partire dalle derivate parziali B u e B v dello scostamento applicato. 9 giugno 2011

14 Informatica Grafica a.a DICGIM – University of Palermo Ombre Linserimento di unombra nellequazioni di illuminamento consiste nel porre dei coefficienti S i che possono valere 1 o 0 per ogni sorgente luminosa. S i =1 implica che il punto è illuminato dalla i-esima sorgente, altrimenti no. 9 giugno 2011

15 Informatica Grafica a.a DICGIM – University of Palermo Algoritmi per le ombre Gli algoritmi per le ombre sono algoritmi di DSV eseguiti in relazione alla posizione della sorgente luminosa. Principali approcci Algoritmo scan-line Bouknight e Kelly Algoritmo di Atherton Wieler e Greenberg Algoritmo di Crow dei volumi dombra Z-buffer shadow 9 giugno 2011

16 Informatica Grafica a.a DICGIM – University of Palermo Algoritmo scan-line Tutti i poligoni sono proiettati, per ogni sorgente, su una sfera centrata nella sorgente stessa e si eliminano le coppie di proiezioni non sovrapposte. Si proiettano i poligoni rimasti a coppie gli uni sugli altri a partire dalla sorgente. Considerando gli pseudo-poligoni costituiti dalle proiezioni si applica lalgoritmo scan-line di visibilità. 9 giugno 2011

17 Informatica Grafica a.a DICGIM – University of Palermo Algoritmo scan-line 9 giugno 2011

18 Informatica Grafica a.a DICGIM – University of Palermo Atherton Wieler Greenberg 9 giugno 2011

19 Informatica Grafica a.a DICGIM – University of Palermo Volumi dombra Per ogni poligono viene definito un volume dombra determinato dai raggi proiettori dei suoi vertici emanati dalla sorgente luminosa. Si contano le facce back-facing e front-facing dei volumi dombra attraversati da un raggio proiettore emanato dalla posizione dellosservatore per raggiungere un punto della scena. Se queste si eguagliano allora il punto è illuminato, altrimenti è in ombra. Nel caso di osservatore in ombra bisogna aggiungere 1 al conteggio degli attraversamenti. 9 giugno 2011

20 Informatica Grafica a.a DICGIM – University of Palermo Volumi dombra 9 giugno 2011

21 Informatica Grafica a.a DICGIM – University of Palermo Z-buffer shadow Si calcola lo z-buffer classico. Per ogni sorgente luminosa si calcola lo z-buffer Z Li (x,y) visto dalla sorgente i-esima e si applica la roto-traslazione osservatore sorgente per i punti visibili. Se un punto dello z-buffer trasformato Z(x,y) risulta essere tale che Z(x,y)

22 Informatica Grafica a.a DICGIM – University of Palermo Z-buffer shadow 9 giugno 2011

23 Informatica Grafica a.a DICGIM – University of Palermo Penombra La penombra si ha quando un oggetto è illuminato da una sorgente luminosa non puntiforme, ma con unestensione finita. Ogni punto ha un livello di ombra dipendente dalla porzione di superficie occlusa dalla sorgente. Un approccio computazionalmente costoso sarebbe quello di modellare una superficie emissiva come un insieme di sorgenti puntiformi. 9 giugno 2011

24 Informatica Grafica a.a DICGIM – University of Palermo Penombra Nishita e Nakamae (1985) hanno determinato un approccio per sorgenti lineari, poligonali o poliedriche convesse e per oggetti poliedrici. Per ogni vertice della sorgente si determina il volume dombra che genera un oggetto della scena proiettando i suoi vertici. Il volume dombra globale è lintersezione di tutti i volumi dombra, mentre il volume di penombra è la chiusura convessa di tutti i volumi dombra. I punti allinterno del volume di penombra sono colorati proporzionalmente alla parte di sorgente visibile: si può usare un approccio BSP-tree. 9 giugno 2011

25 Informatica Grafica a.a DICGIM – University of Palermo Penombra 9 giugno 2011

26 Informatica Grafica a.a DICGIM – University of Palermo Trasparenza Le tecniche di trasparenza possono essere di tipo rifrattivo e non rifrattivo. Le tecniche di tipo rifrattivo calcolano la direzione di un raggio luminoso trasmesso attraverso una superficie e sono utilizzate come parte del processo di ray-tracing. Le tecniche non rifrattive sono dette anche tecniche di blending e riconducono il problema della trasparenza al calcolo del colore di un pixel che appartiene alla proiezione di due o più poligoni sovrapposti e non opachi, ciascuno avente un colore proprio. 9 giugno 2011

27 Informatica Grafica a.a DICGIM – University of Palermo Trasparenza non rifrattiva Nello scenario più semplice abbiamo due poligoni P1 e P2 e sia P1 trasparente e posto davanti a P2, opaco, rispetto alla linea di vista. Il calcolo del colore di un pixel che ricade nellintersezione delle proiezioni dei due poligoni sul piano dellimmagine si ottiene per combinazione dei colori originari di P1 e P2. 9 giugno 2011

28 Informatica Grafica a.a DICGIM – University of Palermo Trasparenza non rifrattiva Blending tra i due colori. Il poligono trasparente filtra la luce che lo attraversa in maniera separata sui tre canali. 9 giugno 2011

29 Informatica Grafica a.a DICGIM – University of Palermo Screen door La tecnica di trasparenza screen-door è semplice ed efficiente. Per simulare un effetto di trasparenza, basta disporre spazialmente mescolati pixel con il colore di P1 e pixel con il colore di P2 secondo un pattern ripetitivo binario m(u,v) {0,1}. Il grado di prevalenza delluno o dellaltro colore in ogni areola elementare dellimmagine determinerà il livello di trasparenza simulato. 9 giugno 2011

30 Informatica Grafica a.a DICGIM – University of Palermo Trasparenza con z-buffer (alg. di Mammen) Esegui il DSV di tutti i poligoni opachi con lo z-buffer classico O=[o(x,y)]: o(x,y)={col, z} per ogni (x,y) Crea il buffer degli oggetti trasparenti T=[t(x,y)]: t(x,y)={trasp, flag, col, z} per ogni (x,y) Ripeti Ripeti per ogni (x,y) t(x,y).flag=0 Ripeti per ogni y Ripeti per ogni x Se esiste un poligono trasparente P tale che o(x,y).z < z P (x,y) < t(x,y).z allora t(x,y).trasp=trasp P t(x,y).flag=1 t(x,y).col=col P t(x,y).z=z P Fine Ripeti Ripeti per ogni (x,y) Se t(x,y).flag=1 allora o(x,y).col=t(x,y).col*(1-t(x,y).trasp) +o(x,y).col*t(x,y).trasp o(x,y).z=t(x,y).z t(x,y).flag=0 Fine Ripeti finché t(x,y).flag=0 per ogni (x,y) 9 giugno 2011

31 Informatica Grafica a.a DICGIM – University of Palermo Trasparenza rifrattiva 9 giugno 2011


Scaricare ppt "Informatica Grafica a.a. 2010-2011 DICGIM – University of Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Effetti fotorealistici."

Presentazioni simili


Annunci Google