Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Seminar Computergrafik WS 2003/04, von A.Diehl2 Inhalt Kapitel 1: Global Illumination  Rendergleichung / Path Notation  Monte Carlo Ansatz  verschiedene.

Ähnliche Präsentationen


Präsentation zum Thema: "Seminar Computergrafik WS 2003/04, von A.Diehl2 Inhalt Kapitel 1: Global Illumination  Rendergleichung / Path Notation  Monte Carlo Ansatz  verschiedene."—  Präsentation transkript:

1

2 Seminar Computergrafik WS 2003/04, von A.Diehl2 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

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

4 Seminar Computergrafik WS 2003/04, von A.Diehl4 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

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

6 Seminar Computergrafik WS 2003/04, von A.Diehl6 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 spekulare Oberfläche diffuse Oberfläche L S D E diese Lichtpfade notiert man in der Form: L ( D|S )* E

7 Seminar Computergrafik WS 2003/04, von A.Diehl7 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)

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

9 Seminar Computergrafik WS 2003/04, von A.Diehl9 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 Kamera Leinwand Licht Objekt

10 Seminar Computergrafik WS 2003/04, von A.Diehl10 Ein Beispiel Ray TracingGlobal Illumination Schattenindirektes LichtLichtbrechung

11 Seminar Computergrafik WS 2003/04, von A.Diehl11 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 Lichtquelle Fläche A Fläche B

12 Seminar Computergrafik WS 2003/04, von A.Diehl12 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: Betrachter Lichtstrahl gebrochenes Licht reflektiertes Licht

13 Seminar Computergrafik WS 2003/04, von A.Diehl13 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:

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

15 Seminar Computergrafik WS 2003/04, von A.Diehl15 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

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

17 Seminar Computergrafik WS 2003/04, von A.Diehl17 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: spekulare Oberflächen Lichtquelle diffuse Oberflächen Die Lichtenergie muss nun auf den diffusen Oberflächen in einer Art gespeichert werden. (vgl. Texture Map) 2.Pass: klassisches Ray Tracing, welches bei diffusen Flächen endet, und die gespeicherte Lichtenergie nutzt, als Annährung: Light Map Man erkennt, dass die diffuse Oberfläche der „Treffpunkt“ beider Pässe ist. Wir erhalten z.B. folgende Pfade: LSDE LSSDSE  Ein wichtiger Vorteil dieser Methode ist, dass der erste Pass blickpunktunabhängig ist und die Light Maps somit im Vorfeld berechnet werden können.

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

19 Seminar Computergrafik WS 2003/04, von A.Diehl19 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: S S D Light Map D  hierdurch erweitern wir die Pfade zu: LS*D*S*E neuer Pass: Radiosity

20 Seminar Computergrafik WS 2003/04, von A.Diehl20 Fragen?

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

22 Seminar Computergrafik WS 2003/04, von A.Diehl22 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!

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

24 Seminar Computergrafik WS 2003/04, von A.Diehl24 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:

25 Seminar Computergrafik WS 2003/04, von A.Diehl25 Beispiele

26 Seminar Computergrafik WS 2003/04, von A.Diehl26 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 …

27 Seminar Computergrafik WS 2003/04, von A.Diehl27 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: k 1 ·k 2 ·…·k n 1 2

28 Seminar Computergrafik WS 2003/04, von A.Diehl28 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).

29 Seminar Computergrafik WS 2003/04, von A.Diehl29 Hüllkugel: viel Leerraum Hüllquader: schon effektiver 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: Objekt

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

31 Seminar Computergrafik WS 2003/04, von A.Diehl31 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

32 Seminar Computergrafik WS 2003/04, von A.Diehl32 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

33 Seminar Computergrafik WS 2003/04, von A.Diehl33 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) Strahl mit (x, y, z, u, v) (u, v)

34 Seminar Computergrafik WS 2003/04, von A.Diehl34 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

35 Seminar Computergrafik WS 2003/04, von A.Diehl35 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 :

36 Seminar Computergrafik WS 2003/04, von A.Diehl36 Beam Tracing geschnittenes Polygon beginnender Beam virtueller Blickpunkt reflektierter Beam 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

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

38 Seminar Computergrafik WS 2003/04, von A.Diehl38 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.

39 Seminar Computergrafik WS 2003/04, von A.Diehl39 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)

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


Herunterladen ppt "Seminar Computergrafik WS 2003/04, von A.Diehl2 Inhalt Kapitel 1: Global Illumination  Rendergleichung / Path Notation  Monte Carlo Ansatz  verschiedene."

Ähnliche Präsentationen


Google-Anzeigen