1 / 20

Environment Mapping

Environment Mapping. Prof. Roberto Pirrone. Sommario. Generalità Geometria delle environment map Mapping cubico Mapping sferico latitudine-longitudine Mappa su sfera Shadow maps. Generalità.

yamka
Download Presentation

Environment Mapping

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Environment Mapping Prof. Roberto Pirrone

  2. Sommario • Generalità • Geometria delle environmentmap • Mapping cubico • Mapping sferico • latitudine-longitudine • Mappa su sfera • Shadowmaps

  3. Generalità Il problema della simulazione della riflessione speculare sugli oggetti risulta molto oneroso dal punto di vista computazionale. In generale si tratta di seguire il percorso dei raggi riflessi da ogni punto della superficie della scena verso il punto di vista, in modo da visualizzare i dettagli della scena riflessi dalla superficie (raytracing). Le mappe ambientali o mappe di riflessione (environmentmaps/reflectionmaps) sono delle mappe bidimensionali, calcolate off-line, contenenti il colore di riflessione speculare di tutti i punti dell’oggetto per cui vengono determinate.

  4. Environment maps • Introdotte da Blinn e Newell (1976) e migliorate da Greene (1986). • Consentono un calcolo veloce della riflessione speculare, ma hanno i seguenti svantaggi: • Sono geometricamente corrette solo per oggetti “piccoli” rispetto alle dimensioni dell’ambiente (non si notano le distorsioni) • Vanno bene solo per oggetti convessi perché definiscono solo tutto l’ambiente intornoall’oggetto per cui sono calcolate • Ogni oggetto da rendere necessita di una mappa a parte • In alcuni casi (mapping sferico) si ha bisogno di una nuova mappa ogni volta che cambia il punto di vista.

  5. Geometria delle environmentmaps • Il raggio riflesso, tracciato a partire dal punto di vista, si calcola come: R=2(N·V)N-V • La mappa è una legge di corrispondenza M(R) in un proprio sistema di coordinate locali (u,v).

  6. Geometria delle environmentmaps • In realtà, pixel si proietta in un’area sulla superficie e sottende un’intera regione della mappa. • Si crea una situazione tipica di texture-mapping: ciò rende interessante l’approccio dal punto di vista computazionale, nonché della gestione dell’anti-aliasing.

  7. Tipologie di mapping • Mapping cubico • Mapping su una sfera • Mappinglatitudine-longitudine • Mapping sferico propriamente detto • Si può pensare di effettuare il mapping di ogni punto dell’oggetto, ovvero dei vertici di ogni poligono (di cui si conoscono le normali) e poi si esegue un’interpolazione.

  8. Mapping cubico La mappa consiste in un cubo normalizzato di lato unitario centrato nell’oggetto da rendere. Si ottengono sei viste ortografiche dell’ambiente osservato dal centro dell’oggetto. Poiché un poligono può proiettarsi contemporaneamente su più facce, si procede preventivamente a suddividere i poligoni in modo tale che ognuno corrisponda ad una sola faccia.

  9. Mappingcubico Per ogni punto (o per ogni vertice di poligono) Calcola R Calcola la faccia intersecata //massimo prodotto //scalare //con ogni normale //uscente Mappa il punto P(x,y,z) // ad es. per la faccia F4 // u=x+0.5 // v=-z+0.5

  10. Esempio di mapping cubico

  11. Confronto con il ray tracing Env. mapping Ray tracing

  12. Mapping latitudine-longitudine L’idea di base è quella di mappare l’ambiente su una sfera, per evitare le problematiche legate al mapping cubico (i poligoni devono corrispondere ad una sola faccia e bisogna individuare, di volta in volta la faccia giusta). In questo caso la mappa è una sorta di planisfero ottenuto, definito per 0≤(u,v)≤1 dalle coordinate polari del raggio riflesso R(Rx,Ry,Rz).

  13. Mapping latitudine-longitudine • Si possono avere dei comportamenti indefiniti per Rz ±1. • Rx e Ry diventano piccoli ed il loro rapporto non è ben definito.

  14. Mapping latitudine-longitudine • Per ovviare al problema della deformazione indotta dalla proiezione si può usare una proiezione ad area costantecioè una proiezione che preserva le aree della sfera sulla mappa • La proiezione cilindrica di Lambert ad area costante proietta un punto di latitudine e longitudine (θ,φ) in: u=φ- φ0, φ0: long. di riferimento v=sin(θ) • Questa proiezione non introduce deformazioneall’equatore

  15. Mapping sferico Nel mapping sferico, l’ambiente viene riflesso su una sfera unitaria perfettamente speculare; questa viene, poi, proiettata ortograficamente sulla mappa. In realtà, la mappa viene generata effettuando un processo di ray-tracing a partire dal piano di vista. Per ambienti reali che devono essere resi nella scena, si può fotografare una piccola sfera riflettente posta nel punto voluto.

  16. Mappingsferico • Per ogni punto (u,v) della mappa, viene individuato il punto P sulla sfera e la corrispondente normale N. • Da N si può calcolare il vettore di riflessione R. • Per individuare un punto sulla mappa si riflette V calcolando u e v.

  17. Proprietà del environment mapping Tramite questo processo si possono generare, usando l’equazione di Phong, anche le mappe dei contributi di illuminamento diffuso sulla superficie di un oggetto, ovvero si possono determinare dei particolari effetti di riflessione tramite tecniche di filtraggio. La tecnica di mapping può essere utilizzata anche per il calcolo delle ombre con l’algoritmo shadowz-buffer. Le mappe di riflessione consentono il rapido inserimento ed animazione di un oggetto in una scena già renderizzata o, meglio ancora, di un oggetto artificiale nella riproduzione di una scena reale.

  18. Environment map filtrata Blurring della mappa per simulare un effetto di opacità della superficie (scattering).

  19. Shadow mapping Z-buffer map dal punto di vista Le sei shadow maps viste dalla sorgente luminosa calcolate con z-buffer shadow

  20. Shadow map e environment map Env map + shadow map Shadow map + env map

More Related