volumetric light scattering - hochschule münchennischwit/hauptseminar/2009/seminararbeit... ·...

26
Volumetric Light Scattering Birgit Wunschheim Grundlagen Verfahren 1 Verfahren 2 Verfahren 3 Verfahren 4 Fazit Volumetric Light Scattering Birgit Wunschheim Hochschule M¨ unchen Munich University of Applied Sciences 30 Juli 2009 1 / 27

Upload: hoangcong

Post on 28-Aug-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Volumetric Light Scattering

Birgit Wunschheim

Hochschule MunchenMunich University of Applied Sciences

30 Juli 2009

1 / 27

Page 2: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Inhalt

• Grundlagen

• Verfahren

1 Real-time Volumetric Lighting in Participating Media2 Anti-aliased and real-time rendering of scenes with light

scattering effects3 Volumetric Light Scattering as a Post-Process4 Interactive Volumetric Shadows in Participating Media

with Single-Scattering

• Fazit

2 / 27

Page 3: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Volumen-Lichtstreuung

• Feinste Partikel im Medium

• Licht wird absorbiert und gestreut

• Bsp. Nebel, Rauch, god rays

• Besonders deutlich bei volumetrischen Schatten

3 / 27

Page 4: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Die Strahlungstransportgleichung

• Physikalisch zugrunde liegende Gleichung

• muss fur jeden Punkt im Raum berechnet werden (teuer!)

• daher meist Vereinfachungen, Naherungen

Die integrale Form der Strahlungstransportgleichung:

L(x) = τ(x0, x)L(x0) +

x∫x0

τ(u, x)κt(u)J(u) du

• L(x) lokale Strahlungsintensitat

• τ(x, y) Durchlassigkeitsgrad des Mediums.

• κt(x) = κa(x) + κs(x) Extinktionskoeffizient

• J(x) Strahlungsintensitat der Lichtquelle

4 / 27

Page 5: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Fake Media Methods

• Physik wird nicht berucksichtigt

• optischer Effekt entscheidend

• Ansprechende Ergebnisse, aber domanenspezifisch

5 / 27

Page 6: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Single Scattering

• Bei hoher Transmittanz oder geringem Albedo:Einfachstreuung ausreichend

• weniger rechenaufwandig als Mehrfachstreuung

• Meist numerische, auch analytische oder stochastischeVerfahren

• Gute Darstellung etwa von Lichtkegeln (Spotlights),sichtbaren Lichtbundeln

• fur Echtzeitverfahren interessant

• Homogenitat des Mediums als weitere Vereinfachung

6 / 27

Page 7: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Multiple Scattering

• Genaueste Nachbildung der physikalischen Vorgange,rechenaufwandig

• meist zwei Durchgange:

1 Berechnung der eingehenden Strahlung pro Punkt(Quellenstrahlung)

2 Visualisierungsdurchgang: Losung der Integralgleichung furalle Punkte der Bildebene

• numerische (isotrop/anisotrop) und stochastische Ansatze

• anisotrope Verfahren aufwandiger, aber realistischer imErgebnis

• bidirektionales Path-Tracing, Metropolis-Methode, PhotonMaps

7 / 27

Page 8: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Real-time Volumetric Lighting in ParticipatingMedia

• Toth et al., Eurografics 2009

• Sichtbare Volumenlichtstrahlen in homogenen Medien furinteraktive Anwendungen

• Single Scattering Verfahren

• Ray-Marching-Verfahren: Lichtstreuung wird entlang deseye rays akkumuliert

• auf der GPU implementiert als Fragment Shader

• Shadow Maps fur die Verdeckungsberechnung

• Z-Buffer fur sichtbare Oberflachen

• interleaved sampling erhoht die Geschwindigkeit

8 / 27

Page 9: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Algorithmus

1 Fur jeden Pixel: ermittle dem Betrachter am nachstenliegenden Oberflachenpunkt sowie dort reflektierteLichtstrahlung. (= Randbedingung fur dieVolumenlichtstrahlung)

2 Von der Oberflache ausgehend: iteriere in kleinen Schrittenentlang des Strahls bis zum Betrachter. An jedemSampling Point:

• berechne eingehende Lichtstreuung nach analytischenModell

• ermittle Absorptionsfaktor e−τ(s−ln)bis zum Betrachter• addiere das Produkt dieser beiden zur Gesamtstrahlung.

3 Speichere berechnete Gesamtstrahlung im Pixel

9 / 27

Page 10: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Real-time Volumetric Lighting in ParticipatingMedia

10 / 27

Page 11: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Interleaved Sampling

• Qualitat und Performance abhangig von Abtastrate proPixel

• Fur Echtzeitfahigkeit: geringe Abtastrate, schlechtereErgebnisse

• deshalb interleaved sampling:

1 Bildflache in Blocke der Große MxM Pixel unterteilen2 N/M2 Abtastwerte pro Pixel auswerten3 Abtastwerte eines Blockes addieren und allen Block-Pixeln

zuordnen

• Voraussetzung: benachbarte Pixel mussen benachbarteOberflachenpunkte treffen

11 / 27

Page 12: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Anti-aliased and real-time rendering of scenes withlight scattering effects

• Imagire et al.

• Vermeidung von Aliaseffekten, die beiSchnittebenenverfahren auftreten:

• hier werden die Volumenobjekte in Schnittebenen zerlegtund an den Eckpunkten ausgewertet.

• bei Echtzeitfahigkeit oft zu geringen Anzahl Ebenen• es entstehen Artefakte

12 / 27

Page 13: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Verfahren

• sampling hulls verhindern Artefakte• Volumenobjekt wird parallel zur Bildflache zweimal

durchschnitten• es entsteht ein konvexes Polyeder, die sampling hull• Form wird genauer nachgebildet, keine Treppeneffekte• n Abtastungen pro sampling hull ermitteln

Streulichtintensitat• eine Alpha-Blending Operation pro Schnittebene

13 / 27

Page 14: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Algorithmus

1 Zunachst wird die bounding box des Volumenobjektes inmehrere sampling hulls unterteilt.

2 Nun werden die opaken Objekte der Szene in den FrameBuffer gerendert.

3 Anschließend werden die sampling hulls der Reihe nach -von hinten bis nach vorne zur Bildebene - bearbeitet undjeweils

• das Volumenobjekt innerhalb der sampling hull gerendert.Hierbei wird der valid sampling path innerhalb dersampling hull gleichmassig abgetastet und jeweils dieLichtstreuungsintensitat berechnet und

• das Ergebnis durch Alpha Blending mit dem Rest derSzene zusammengefugt

14 / 27

Page 15: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Ergebnis

• Links: das vorgestellte Verfahren mit 8 sampling hulls mitjeweils 8 Abtastpunkten. Framerate 77 fps, es sind keineAlias-Effekte sichtbar.

• Rechts: Ein Schnittebenenverfahren mit 64 Ebenen.Framerate 203 fps, es treten Artefakte auf.

15 / 27

Page 16: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Volumetric Light Scattering as a Post-Process

• K. Mitchell, Electronic Arts

• Post-Processing Verfahren fur Erzeugung von god rays

• bestehendes analytisches Modell fur Beleuchtung am Tagwird um volumetrische Schatten erweitert

• Implementierung als Pixel Shader auf der GPU (ShaderModel 3.0)

16 / 27

Page 17: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Verfahren

• Die Lichtintensitat pro Pixel wird analytisch nach Hoffmanund Preetham berechnet

• Abschattungseffekte durch opake Objekte werden einfachals Abschwachung der Lichtquelle modelliert

L(s, θ, φ) = (1−D(φ))L(s, θ)

• s durch das Medium zuruckgelegte Entfernung

• θ Winkel zwischen Strahl und Lichtquelle

• φ Position des Betrachters

• D(φ) Opazitat der Objekte, die die Sonne verdunkeln

17 / 27

Page 18: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Verfahren

• Abschattung pro Pixel wird geschatzt, indem auf Bildebeneein Strahl zwischen Pixel und Lichtebene gebildet wird

• Strahl wird gleichmassig abgetastet, Anzahl derAbtastpunkte im Schatten ergibt gesuchten Wert

• Voraussetzung: opake Objekte mussen dunkler alsumgebendes Medium sein

18 / 27

Page 19: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Grenzen des Verfahrens

• Schatten von Hintergrundobjekten werden vorVordergrundobjekten sichtbar

• Plotzliches Flackern der Lichtstrahlen, wenn opakeObjekte die Bildebene verlassen. Zur Vermeidung kann einzusatzlicher Randbereich gerendert werden.

• Lichtquelle muss vom Betrachter aus sichtbar sein.

19 / 27

Page 20: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Interactive Volumetric Shadows in ParticipatingMedia with Single-Scattering

• Hybrides Verfahren von Wyman et al.

• kombiniert Ray-Marching mit Techniken fur volumetrischeSchatten

• Homogene Medien, Single Scattering

20 / 27

Page 21: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Verfahren

• Berechnung der Lichtstreuung in beleuchteten Regionenuber analytisches Modell von Sun et al.

• Bestimmung des Integrals der eingehenden Lichtstreuungpro Pixel uber zwei Lookups in eine Tabelle mitvorberechneten Werten

• Lichtintensitat muss konstant sein

21 / 27

Page 22: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Algorithmus

1 Rendere Shadow Map aus Sicht der Lichtquelle.

2 Rendere Schattenvolumen aus Sicht des Betrachters,speichere jeweils Abstand zwischen vorderstem undhinterstem Schattenpolygon.

3 Rendere Szene unter Berucksichtigung der Abschwachungder Lichtintensitat e−(κa+κs)ds

(κa Absorptions-, κs Scattering-Koeffizient, ds Entfernung Betrachter / Oberflachenpunkt)

4 Fur Pixel, die keine Schattenbereiche treffen, verwendeModell von Sun et al.

5 Fur die ubrigen Pixel: fuhre Ray-Marching durch, welchesdie schattierten Bereiche von hinten nach vorne durchlauftund beleuchtete Bereiche uber Shadow Map identifiziert.Diese werden uber obiges Modell berechnet.

6 Kombiniere die berechneten beleuchteten Regionen mitder Szene aus 3.

22 / 27

Page 23: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Interactive Volumetric Shadows in ParticipatingMedia with Single-Scattering

• Ray-Marching wird nur fur Pixel durchgefuhrt, die vonvolumetrischen Schatten betroffen sind, und auch nur indem Bereich zwischen vorderster und hintersterSchattengrenze

• dadurch wird Anzahl der Abtastwerte minimiert undPerformance verbessert

• Erweiterungen fur mehrfarbige Spotlights und simulierteMultiscattering Szenen

• vorberechnete Werte werden in Textur gespeichert

23 / 27

Page 24: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Einschatzungen

Alle Verfahren konnen auf der GPU implementiert werden undsind echtzeitfahig

• Volumetric Light Scattering as a Post-Process (V3):• einfach und schnell• viele Einschrankungen und Artefakte• nur ein Anwendungsfall, Fake Media Method.

• Anti-aliased and real-time rendering of scenes with lightscattering effects (V2):

• Gute Vermeidung von Artefakten• aber nur Vergleich mit Schnittebenenverfahren

24 / 27

Page 25: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Einschatzungen

• Real-time Volumetric Lighting in Participating Media(V1):

• analytischer Ansatz mit klassischem Ray-Marching• Per se nicht echtzeitfahig• Interleaved Sampling kann die Qualitat beeintrachtigen

• Interactive Volumetric Shadows in Participating Mediawith Single-Scattering (V4):

• Hybrides Verfahren• tastet nur Bereiche ab, die teilweise im Schatten liegen• Gute Performance.• Werte mussen vorab berechnet und gespeichert werden.

25 / 27

Page 26: Volumetric Light Scattering - Hochschule Münchennischwit/Hauptseminar/2009/Seminararbeit... · bidirektionales Path-Tracing, Metropolis-Methode, Photon Maps 7/27. Volumetric Light

VolumetricLight

Scattering

BirgitWunschheim

Grundlagen

Verfahren 1

Verfahren 2

Verfahren 3

Verfahren 4

Fazit

Quellen

Literatur

• Mitchell K., Volumetric Light Scattering as a Post-Process, 2007.

• Cerezo E. and Perez - Cazorla F. and Pueyo X. and Seron F. and Sillion F., A Survey onParticipating Media Rendering Techniques, 2005.

• Imagire T. and Johan H. and Tamura N. and Nishita T., Anti-Aliased and Real-Time Rendering ofScenes with Light Scattering Effects., 2007.

• Wyman, C. and Ramsey, S., Interactive Volumetric Shadows in Participating Media withSingle-Scattering, 2008

• Toth B. and Umenhoffer T., Real-time Volumetric Lighting in Participating Media, 2009

• Nischwitz A. and Fischer M. and Haberacker P., Computergrafik und Bildverarbeitung, ViewegVerlag, 2007.

• Sun B. and Ramamoorthi S. and Narasimhan N. and Nayar S., A practical analytic single scatteringmodel for real time rendering, 2005.

• Wikipedia, Aerosol — Wikipedia, Die freie Enzyklopadie, 2009.

• Premoze S. and Ashikhmin M., Rendering natural waters, 2001.

26 / 27