1 / 40

Inhalt

Inhalt. Kapitel 1: Global Illumination  Rendergleichung / Path Notation  Monte Carlo Ansatz  verschiedene Methoden (Ray Tracing, Radiosity, Path Tracing, …) Kapitel 2: Ray Tracing  Turner Whitteds Einstieg  Funktionsweise  Optimierungsmethoden.

mare
Download Presentation

Inhalt

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. Inhalt • Kapitel 1: Global Illumination  Rendergleichung / Path Notation  Monte Carlo Ansatz  verschiedene Methoden (Ray Tracing, Radiosity, Path Tracing, …) • Kapitel 2: Ray Tracing  Turner Whitteds Einstieg  Funktionsweise  Optimierungsmethoden Seminar Computergrafik WS 2003/04, von A.Diehl

  2. Kapitel 1: Global Illumination • bezeichnet allgemein dieSimulation der Interaktion von Licht mit der gesamten Umwelt • zwei Wege diesen komplexen Vorgang zu erfassen: • Rendergleichung • Pfadnotation (Path Notation) Seminar Computergrafik WS 2003/04, von A.Diehl

  3. Rendergleichung • 1986 von Jim Kajiya aufgestellt • Gleichung für einen Punkt x einer Oberfläche [ ] Lichtintensität von x‘ auf x. Sichtbarkeitsfunktion: 0 wenn nicht sichtbar, sonst das inverse Quadrat der Distanz Lichtstrahlung von jedem x‘ auf x. Streufunktion: das Licht von x‘‘ welches über x‘ nach x gestreut wird. Integral über S: alle Punkte der Szene Seminar Computergrafik WS 2003/04, von A.Diehl

  4. Rendergleichung • viele Ansätze benutzen modifizierte Versionen dieser Gleichung • Beispiel: Radiosity-Gleichung (ausgehende Strahlung von x) • bzw. die bekannte Version: Seminar Computergrafik WS 2003/04, von A.Diehl

  5. diffuse Oberfläche spekulare Oberfläche Path Notation • einfache Methode die Interaktion zwischen Flächen auszudrücken • Licht kann auf eine spekulare oder diffuse Fläche treffen • und selbst von einer spekularen oder diffusen Fläche kommen • diese Lichtpfade notiert man in der Form: L ( D|S )* E L E D S Seminar Computergrafik WS 2003/04, von A.Diehl

  6. Monte Carlo Ansatz • Annäherungsmethode, z.B. zum Lösen von Integralen, wie z.B. Rendergleichung • Durchschnitt von n Zufallwerten: einfache Methode • je mehr Zufallswerte man nimmt, desto genauer wird das Ergebnis • doch weitere Werte haben immer weniger Effekt  daher nimmt man eine feste Zahl von Werten (auch wegen Rechenzeit) Seminar Computergrafik WS 2003/04, von A.Diehl

  7. ξn ξ2 ξ1 f(x) 0 Monte Carlo Ansatz • man unterteilt das Integral in n gleiche Sektionen, und wendet Stratified Sampling an: Seminar Computergrafik WS 2003/04, von A.Diehl

  8. Licht Leinwand Kamera Objekt Einführung: Ray Tracing • Idee: Strahlen durch eine Szene begleiten • dem Licht entgegen: vom Betrachter aus • bei einem Schnitt mit einem Objekt werden Lichtstrahl, gebrochener und reflektierter Strahl erzeugt • blickpunktabhängig Seminar Computergrafik WS 2003/04, von A.Diehl

  9. Schatten indirektes Licht Lichtbrechung Ein Beispiel Ray Tracing Global Illumination Seminar Computergrafik WS 2003/04, von A.Diehl

  10. Lichtquelle Fläche A Fläche B Einführung: Radiosity • Idee: jede Fläche strahlt Licht ab • d.h. es wird für jede Fläche das Licht von allen anderen Flächen bestimmt • je nach Material strahlt diese Fläche wieder Licht ab • blickpunktunabhängig Seminar Computergrafik WS 2003/04, von A.Diehl

  11. Betrachter Lichtstrahl gebrochenes Licht reflektiertes Licht Path Tracing Kajiya stellte fest, dass klassisches Ray Tracing verschwenderisch ist: • es erzeugt mehr und mehr Strahlen, je tiefer der Algorithmus geht • diese Strahlen haben aber immer weniger Effekt: Seminar Computergrafik WS 2003/04, von A.Diehl

  12. Path Tracing • daher die Idee den Pfad eines Strahles zu verfolgen • hierbei wird zufällig bestimmt, ob reflektierter oder gebrochener Strahl erzeugt wird • betrifft spekulare und diffuse Flächen • daher müssen pro Pixel auch mehrere Strahlen initiiert werden: Seminar Computergrafik WS 2003/04, von A.Diehl

  13. Lichtstrahl Lichtstrahl reflektiertes Licht gebrochenes Licht Betrachter Betrachter 400 Strahlen pro Pixel 4 Strahlen pro Pixel 225 Strahlen pro Pixel Path Tracing Mit dieser Methode erreicht man volle L(S|D)*E Interaktionen, mit allerdings hohen Kosten: Man erhält also folgende Baumstruktur: erster Strahl: zweiter Strahl: Seminar Computergrafik WS 2003/04, von A.Diehl

  14. Distributed Ray Tracing • Erweiterung des klassischen Ray Tracing, von Cook (1986) • klassisches Ray Tracing ist zu „perfekt“ (scharfe Kanten, perfekte Reflektionen, …) • hierzu wird bei jedem Schnittpunkt eine gerichtete Menge von Strahlen erzeugt: Objekt Seminar Computergrafik WS 2003/04, von A.Diehl

  15. Distributed Ray Tracing: (50 Strahlen) Distributed Ray Tracing Dadurch kann man verschiedene Effekte erreichen:  weiche Schatten  verschwommene Reflektionen  verschwommene Transparenz klassisches Ray Tracing: Seminar Computergrafik WS 2003/04, von A.Diehl

  16. Light Map diffuse Oberflächen Lichtquelle spekulare Oberflächen Two-Pass Ray Tracing Von Arvo (1986) vorgeschlagen, als bidirektionale Ray Tracing Methode um Lichtbrechungen darzustellen. • 1.Pass: Lichtstrahlen von den Lichtquellen durch spekulare Interaktionen begleiten, bis zur ersten diffusen Fläche:  Ein wichtiger Vorteil dieser Methode ist, dass der erste Pass blickpunktunabhängig ist und die Light Maps somit im Vorfeld berechnet werden können. Man erkennt, dass die diffuse Oberfläche der „Treffpunkt“ beider Pässe ist. Wir erhalten z.B. folgende Pfade: LSDE LSSDSE • 2.Pass: klassisches Ray Tracing, welches bei • diffusen Flächen endet, und die gespeicherte • Lichtenergie nutzt, als Annährung: • Die Lichtenergie muss nun auf den diffusen • Oberflächen in einer Art gespeichert werden. • (vgl. Texture Map) Seminar Computergrafik WS 2003/04, von A.Diehl

  17. Two-Pass Ray Tracing Ein Beispiel, wie sich diese Methode äußert: • je nach Dichte ergeben sich Lichteffekte: Licht Pass Seminar Computergrafik WS 2003/04, von A.Diehl

  18. Light Map D D Light Map Multi-Pass Methoden Wir haben immer die Unterscheidung: • Blickpunktabhängigkeit (spekulare Interaktionen) • Blickpunktunabhängigkeit (diffuse Interaktionen) Die Two Pass Methode kann nur LS*DS*E Pfade darstellen. Eine Erweiterung nimmt nun die Radiosity Methode hinein:  hierdurch erweitern wir die Pfade zu: LS*D*S*E S S neuer Pass: Radiosity Seminar Computergrafik WS 2003/04, von A.Diehl

  19. Fragen? Seminar Computergrafik WS 2003/04, von A.Diehl

  20. Kapitel 2: Ray Tracing Auch „Whitted Ray Tracing“ genannt, nach Turner Whitted, welcher 1980 das erste Bild ray tracte: Seminar Computergrafik WS 2003/04, von A.Diehl

  21. Eigenschaften • zentral im Ray Tracing sind Schnittoperationen • der naive Ansatz testet also für jeden Strahl den Schnitt mir jeder Fläche! • pro Schnitt werden zwei neue Strahlen erzeugt • für Schattenberechnung werden pro Schnitt noch n weitere Strahlen erzeugt (bei n Lichtquellen)  sehr aufwendig! Seminar Computergrafik WS 2003/04, von A.Diehl

  22. Kamera Bildebene (in Pixeln) Lichtstrahl (zu jeder Quelle) Objekt / Fläche gebrochener Strahl reflektierter Strahl diffuse Oberfläche … … … Algorithmus Seminar Computergrafik WS 2003/04, von A.Diehl

  23. Rekursion Dieses Beispiel basiert auf Whitteds Ray Tracing: Bei jedem Punkt x, der von einem Strahl getroffen wird haben wir eine lokale und eine globale Komponente: Seminar Computergrafik WS 2003/04, von A.Diehl

  24. Beispiele Seminar Computergrafik WS 2003/04, von A.Diehl

  25. Optimierung • naives Ray Tracing ist sehr kostenaufwendig • vor allem Schnittberechnungen sind teuer • hohe Rekursionstiefe, wobei tiefere Strahlen immer weniger Effekt haben • daher wurden einige Optimierungsmethoden entwickelt … Seminar Computergrafik WS 2003/04, von A.Diehl

  26. Adaptive Depth Control Die Tiefe des Algorithmus hängt stark von der Szene ab: • viele spekulare Objekte bedeuten viele Reflektionen und hohe Tiefe • bei diffusen Objekten enden die Strahlen früher • die Intensität der Strahlen wird immer weiter durch die Koeffizienten vermindert, je tiefer der Algorithmus geht: • allgemein: k1·k2·…·kn 2 1 Seminar Computergrafik WS 2003/04, von A.Diehl

  27. Adaptive Depth Control • diese Methode setzt einen Minimalwert für die Intensität eines Strahles • wird dieser Wert unterschritten, bricht der Algorithmus ab Selbst bei sehr reflektierenden Szenen und einer maximalen Rekursionstiefe von 15 kommt eine durchschnittliche Tiefe von 1,71 heraus (nach Hall und Greenberg, 1983). Seminar Computergrafik WS 2003/04, von A.Diehl

  28. Hüllkugel: viel Leerraum Hüllquader: schon effektiver Objekt Hüllkörper Weitere Methode die Schnittberechnungen zu optimieren: • Einfassen eines Objekts in einen Hüllkörper (einfacher Schnitttest) • erst wenn dieser getroffen wird, wird das Objekt geprüft • auch Hierarchien von Hüllkörpern werden verwendet • Wahl der Hüllkörper ist ebenfalls wichtig: Seminar Computergrafik WS 2003/04, von A.Diehl

  29. Hüllkörper Gängig sind drei Arten von Hüllkörpern: • Hüllkugeln • achsenorientierte Hüllquader • objektorientierte Hüllquader Seminar Computergrafik WS 2003/04, von A.Diehl

  30. Räumliche Zusammenhänge • einfache Idee: die Szene wird in Regionen unterteilt • nun schneidet man einen Strahl mit Objekten in der Region, die er durchquert • nicht mit allen Objekten! • die Aufteilung geschieht vor dem eigentlichen Ray Tracing und wird in einer weiteren Datenstruktur gespeichert  einmalige Berechnung Seminar Computergrafik WS 2003/04, von A.Diehl

  31. Räumliche Zusammenhänge Einfaches Beispiel mit Trennebenen: • mehrere Ansätze für diese Idee • variieren im Aufbau der Datenstruktur • meist verbreitet sind: • BSP – Bäume • Octrees Seminar Computergrafik WS 2003/04, von A.Diehl

  32. Strahl mit (x, y, z, u, v) (u, v) Ray Space Subdivision • Idee von Arvo und Kirk (1987): • anstatt Szene in Regionen aufzuteilen, teilt man den Raum der Strahlen • 5D-Hyperwürfel, somit ist ein Strahl ein 5-Tupel (x, y, z, u, v) mit Ursprung (x, y, z) und Richtung (u, v) Seminar Computergrafik WS 2003/04, von A.Diehl

  33. Ray Space Subdivision • diese „Strahlen“ werden mit den Objekten geschnitten • dadurch erzeugt man eine Liste mit möglichen Schnittobjekten • benötigt eine 5D-Erweiterung eines Octrees • komplexe Struktur • schwierige Schnittoperation, daher werden Hüllkugeln empfohlen Seminar Computergrafik WS 2003/04, von A.Diehl

  34. Beam Tracing Bisher wurde eine wichtige Eigenschaft ausgelassen: • ein Strahl hat viele Nachbarn, die ähnliche Schnittobjekte haben • man folgt also gleich mehreren Strahlen durch die Szene (sog. Beams) • benötigt transformiertes Koordinatensystem, beginnt mit Kamera-Koordinatensystem • rekursiver Algorithmus, der mit dem View Frustum beginnt : Seminar Computergrafik WS 2003/04, von A.Diehl

  35. reflektierter Beam beginnender Beam geschnittenes Polygon virtueller Blickpunkt Beam Tracing große Nachteile dieser Technik sind: • nur noch polygonale Objekte (keine Kugeln), was der große Vorteil des Ray Tracings ist • es können Löcher in den Beams enstehen • Lichtbrechung ist nicht mehr linear berechenbar Seminar Computergrafik WS 2003/04, von A.Diehl

  36. r r-1 r-2 weiterer Ansatz Ein anderer Ansatz ist, die Schnittobjekte des vorherigen Strahls zu benutzen, um die des nächsten vorherzusagen: Um neue Schnitte festzustellen, werden Sicherheitszylinder konstruiert (Bsp. r-2): • durchstößt der neue Strahl diesen Sicherheitsbereich, werden herkömmliche Schnitttests durchgeführt • ansonsten die Schnittobjekte des vorherigen Strahls behandelt O1 O3 O2 Seminar Computergrafik WS 2003/04, von A.Diehl

  37. weiterer Ansatz Dieser Ansatz von Speer (1986) hat dennoch den Nachteil, dass er aufwendiger ist, als klassisches Ray Tracing, da • zwar ⅔ der Strahlen sich ähnlich verhalten, aber • die Berechnung der Sicherheitszylinder und • die Durchstoßberechnungen hinzukommen, • denn auch deren Größe sinkt mit der Komplexität der Szene. Seminar Computergrafik WS 2003/04, von A.Diehl

  38. Quellen • „3D Computer Graphics“ von Alan Watt • „An Introduction to Global Illumination“ von Tomas Akenine-Moeller, (PPT-Vortrag) • „Distributed Ray Tracing“ von Allan Martin (http://www.cs.wpi.edu/~matt/courses/cs563/talks/dist_ray/dist.html) • „Naive Path Tracing“ (http://www.cs.unc.edu/~naiks/ugrad/cs6620/p4/) • „Global Illumination“ von CS324 Computer Graphics • WinOSI (http://www.winosi.onlinehome.de/Comp1.htm) Seminar Computergrafik WS 2003/04, von A.Diehl

  39. Ende Vielen Dank für Ihre Aufmerksamkeit! Seminar Computergrafik WS 2003/04, von A.Diehl

More Related