Beleuchtung, inkl. Schatten, Reflexionen

Slides:



Advertisements
Ähnliche Präsentationen
Hauptseminar - Computer Graphics
Advertisements

• • • • • 3.2 Die projektive Erweiterung des E³
Geometrie von Objektoberflächen
Übung 6.6Schranken 1.Angenommen, Ihr Algorithmus habe einen Aufwand von g(n) = 5n 3 + n für alle n a)Geben sie eine obere Schranke O(g(n)) an. b)Beweisen.
Kollisionen erkennen Kollisions- und Schnittpunkttests auf Dreieckbasis Kollisions- und Schnittpunkttests auf Viereckbasis Einsatz von achsenausgerichteten.
3.2 und 3.2.1: Räumliches Sehen und Koordinaten und Vektoren
4. Geometrische Optik Bildübertragung  Informationsübertragung mit Licht .Lichtquellen: Glühlampe (Wärmestrahlung, Sonne), Leuchtstoffröhre, Bogenlampe.
Graphische Datenverarbeitung IV Dr. Markus Heitz.
Zentralprojektion „Perspektive“
Licht und Schatten Richard Göbel.
5.2 Schattierungsverfahren
5. Beleuchtung und Schattierung
Phong Shading (Normaleninterpolation)
Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung
Java3d „Licht und Material“
PG 478 – Open Graph Drawing Framework Thema: Compounds & Force-Directed Francois Bertault & Mirka Miller – An Algorithm for Drawing Compound Graphs [1999]
Computergrafik Vom Dreieck zum Ego-Shooter Olaf Müller
Optik (Lehre vom Sichtbaren)
Schulphysik 2 3. Linsen.
Von Huiyu Li. 1.Anwendungsideen Zwei Arten von digitaler Bildbearbeitung in der Architektur 1.1 Veränderung: Existierende Bilder werden durch Bildbearbeitung.
FH-Hof Licht Richard Göbel. FH-Hof Licht in Java3D - Basisideen Bereitstellung unterschiedlicher Lichtquellen Definition der Wirkung einer Beleuchtung.
BSP Binary Space Partitioning
FHP - Fachbereich Bauingenieurwesen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
4.1 Farbmodelle Farbe ist ein wesentlicher Bestandteil realistischer Computer- grafik. Dieses Unterkapitel beschreibt die quantitativen Aspekte von Farbe,
Teil 2: Modellierung, Materialzuweisung, Licht(quellen)
Visualisieren von Licht
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 3 Übung: Softwaretechnologie.
Eine Entdeckungsreise durch die Zeit
Computergrafik - Inhalt
Lichtbrechung Ein Teil des Lichts wird an der Wasseroberfläche
Computergraphische Visualisierungs- verfahren für 3D-Stadtmodelle
Grosses Seminar Bernhard Garthe
4.3 Beleuchtung und Schattierung
4.7 Globale Beleuchtungsmodelle
§5-1 §5 Mapping-Techniken Computergrafik - SS Motivation Bisher sind alle Oberflächen (polygonale Objekte, später auch parametrisierte Freiformflächen)
Abschlussquiz ©
Geometrie : Rekonstruktion
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Medizinische Visualisierung
Teil 2: Kurven und Flächen
Objekte und ihre Beschreibung
Algorithmen und Datenstrukturen Übungsmodul 8
Helwig Hauser Teil 12: Zusammenfassung All CGR4 revisited.
Helwig Hauser Teil 9: Radiosity Simulation globaler Lichtverteilung.
Helwig Hauser Teil 4: Texturing Farbe, Struktur, Umgebung.
Beleuchtungsmodelle, Schattierungsmodelle
Visualieren und Animieren
Seminar: Grundlagen Wissenschaftlichen Arbeitens
Alexander ZapletalObject Space 1 /15 Object Space von Alexander Zapletal.
T. Wallrath Optimierung des Photon Mapping Verfahrens durch Verbesserung der Radiance Estimate Berechnung und Einsatz von Radiosity Photonen.
Erfahrungen mit Microsoft DirectX 8 W. Krug, April 2002.
Die Welt der Shader Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Fortgeschrittene Techniken.
Organisation von Wahrnehmung
HS: Aspects of Game Engine Design
Die Renderpipeline.
Multimedia und Virtual Reality Vorlesung am Martin Kurze Multimedia in 3D.
Global-Illumination: Radiosity
Global Illumination Computergraphik Seminar im Wintersemester 2004/05 bei Prof. Dr. Elmar Schömer von Stephan Wasshausen.
Powerpoint-Vortag für das Seminar „Computergrafik“ im Wintersemester 2003/’04, Fachbereich Mathematik & Informatik, Johannes-Gutenberg-Universität Mainz,
1 Acquiring the Reflectance Field of a Human Face Paul Debevec et al.
Helwig Hauser 1CGR4 - Einleitung CGR4 – Computergraphik 2 Helwig Hauser, VRVis Wien
Photon Mapping Jörg Hedrich Lena Kohl Ruth Recker Anke Schneider Pascal Sproedt Benjamin Zapilko Projektpraktikum: Augmentierte Bildsynthese mit Photon.
Optik Licht und Schatten Die Optik ist die „Lehre vom Licht“!
„Sehstrahlen“ und Spiegelbilder
Lichtexprimente ls stadttechnik ws 02/03 marco bartsch marco laske lichtsimulation mit software.
Optik Brechung des Lichtes Von Brechung des Lichtes
Optik (Lehre vom Sichtbaren)
DG3 – Zylinderschnitte Aufgabenstellung: Zwei Zylinder werden geschnitten.
Verdeckungsrechnung 2 Ladies & gentleman The title of my talk is :
 Präsentation transkript:

Beleuchtung, inkl. Schatten, Reflexionen Teil 8: Ray Tracing Beleuchtung, inkl. Schatten, Reflexionen Teil 8: Ray Tracing

Ray Tracing – Einleitung Forward Ray Tracing: Lichtwege verfolgen: wohin fällt Licht? vgl. shooting (Radiosity) Strahlen verfehlen Auge: aufwendig! Backward Ray Tracing: „Blickstrahl“-Verfolgung: was sehe ich? vgl. gathering (Radiosity) Beleuchtung rekonstruieren Teil 8: Ray Tracing

(Bwd.) Ray Tracing Idee: für jedes Pixel: berechne Blickstrahl (Kameramodell) verfolge Blickstrahl in die Szene, ermittle nähesten Schnittpunkt (Schnittpunktberechnung) ermittle Beleuchtung (Phong, Schatten) ermittle indirekte Beleuchtung (Reflexionen, Brechungen) kombinieren Farbeindruck = Pixel-Wert evtl. mehr . . . Teil 8: Ray Tracing

Ray Tracing – Bausteine Kameramodell Blickstrahlermittlung Sichtbarkeitsberechnung = Schnittberechnungen++ welches Objekt sehe ich (pro Pixel) Schattierung bzw. Beleuchtung Schattenermittlung (Schattenfühler) lokales Beleuchtungsmodell (Phong) Indirekte Einflüsse, Rekursion Reflexionen, Brechungen Teil 8: Ray Tracing

Charakteristika anhand von Beispielen Ray Tracing Charakteristika anhand von Beispielen Teil 8: Ray Tracing

RT: Reflexionen, Brechungen Normalerw. aber nicht: Kaustiken Prismen-effekt Teil 8: Ray Tracing

RT: Photo-Realismus Normalerw. aber nicht: Schmutz Out-door Tiefen-unschärfe Teil 8: Ray Tracing

RT: Licht und Schatten Normalerw. aber nicht: Halbschatten, i.e., flächige bzw. räuml. Lichtquellen Teil 8: Ray Tracing

RT: Komplexe Objekte Normalerw. aber nicht: komplexe Modelle realer Obj. (Tiere, etc.) Teil 8: Ray Tracing

Ray Tracing – Charakteristika Photo-realistische Ergebnisbilder Sichtbarkeitsalgorithmus Lichtquellen (auch mehrere), Schatten Reflexionen, Brechungen Komplexe Objekte (gekrümmt, fraktal) Sehr aufwendig Teil 8: Ray Tracing

Ray Tracing – Strahlverfolgung Primärstrahlen, Sekundärstrahlen Teil 8: Ray Tracing

Ray Tracing – Strahlen Primärstrahlen Sekundärstrahlen: RT-Graph Reflexionen R, Brechungen T RT-Graph Teil 8: Ray Tracing

Teil 8: Ray Tracing

Eye Cube Sphere Cylinder *) RT Baum für gezeigte Folie Cube reflected refracted Sphere Cylinder Teil 8: Ray Tracing

Ray Tracing – Algorithmus Sehstrahl, Schnittberechnung, Beleuchtung & Schatten, Rekursion Teil 8: Ray Tracing

FOR every pixel p DO 1. trace primary ray find closest intersection s 2. FOR every light source l DO trace shadow feeler l -> s IF no intersection THEN illumination += local influence of l 3. IF surface of s is reflective THEN trace secondary ray illumination += influence of reflection IF surface of s is transparent THEN trace secondary ray illumination += influence of refraction Teil 8: Ray Tracing

Ray Tracing – Beispiel (1) 1. Sichtbarkeitsberechnung: welcher Objektpunkt wird betrachtet? Teil 8: Ray Tracing

Ray Tracing – Beispiel (2) 2a: Lokale Beleuchtung (1. Licht): Phong! L1 Teil 8: Ray Tracing

Ray Tracing – Beispiel (3) 2b: Lokale Bel. (2. Licht): Schatten! L2 L1 Teil 8: Ray Tracing

Ray Tracing – Beispiel (4) 3: Indir. Bel. (Spiegel.) L1 Teil 8: Ray Tracing

Ray Tracing – Beispiel (5) 3.1: Schattierung des 2. Objekts L2 L1 Teil 8: Ray Tracing

Ray Tracing – Beispiel (6) 0.: Bild: alles für jedes Pixel L1 Teil 8: Ray Tracing

Ray Tracing – Beispiel (7) Perspektivische Projektion Schatten Reflexionen Lokale Beleuchtung L1 Teil 8: Ray Tracing

Ray Tracing – Schnittberechnungen Kugel, Polygon, Box Teil 8: Ray Tracing

Anforderungen an Objekte Schnittberechnung mit Strahl Lösung in geschlossener Form Iterativer, numerischer Ansatz Normalenberechnung im Schnittpunkt Beispiele: Implizit definierte Objekte – f(x)=0 – wie Kugel, Ebene, etc.: oft relativ einfach Sonst: oft Ausnutzen von Hilfsstrukturen: bounding boxes, regular grid, BSP, etc. Teil 8: Ray Tracing

Strahl-Kugel Schnitt (1) Strahl (parametrisch): Augpunkt P0, Richtungsvektor R, i.e. P(t) = P0 + t R (|R| = 1) Kugel (implizit): Mittelpunkt M, Radius r R r P M Teil 8: Ray Tracing

Strahl-Kugel Schnitt (2) 1. Abstand2 (M-P0)2  m2  P0 außerhalb? 2. P0 außerhalb + R zeigt weg von Kugel R(M-P0)  h < 0  fertig (kein Schnitt) 3. Def. D ( Strahlpunkt am nächsten zu M) 4. Abstand2 (M-D)2  d2  Strahl schneidet? 5. d2>r2  fertig (Strahl geht vorbei) 6. Ber. t-Werte von Schnittpunkten ( t1, [ t2 ]) 7. Ber. Schnittpunkte S1, [ S2 ] 8. Ber. Kugelnormale N1, [ N2 ], fertig (Schnitt) Teil 8: Ray Tracing

Strahl-Kugel Schnitt (3) Ende bei 5. Ende bei 2. Teil 8: Ray Tracing

Strahl-Kugel Schnitt, Beispiel (1) Bsp.: P0 = (1 –2 –1)T, R || (1 2 4)T, M = (3 0 5)T, r = 3 1. m2 = (M-P0)2 = (2 2 6)T(2 2 6)T = 44 44 > r2 = 9  P0 außerhalb 2. R  (M-P0) = (1 2 4)T/21  (2 2 6)T = 6.546 6.546 > 0  R zeigt in Richtung Kugel !! R  (M-P0) = h = mcos(MP0D) = |D-P| !! 4. d2 = m2 – h2 = 44 – 42.850 = 1.150 5. 1.150 < r2 = 9  Strahl schneidet wirklich Teil 8: Ray Tracing

Strahl-Kugel Schnitt, Beispiel (2) Bsp.: P0 = (1 –2 –1)T, R || (1 2 4)T, M = (3 0 5)T, r = 3 6. s2 = r2 – d2 = 9 – 1.150 = 7.850  s = 2.802 t1 = h – s = 6.546 – 2.802 = 3.744, t2 =  7. S1 = P0  t1  R = (1.816 0.368 2.269)T, S2 =  8. N1 = (S1M) / r = (0.395 0.123 0.910)T, N2 =  Teil 8: Ray Tracing

Strahl-Polygon Schnitt (1) Strahl: P = P0 + tR |R| = 1 Polygon-Ebene: Ax + By + Cz + D = 0 (A2+B2+C2)=1 Normalvektor auf Polygon: N = (A B C) Vektorschreibweise: NP = –D N (P0 + tR) = –D  t = – (D + NP0)/NR Teil 8: Ray Tracing

Strahl-Polygon Schnitt (2) NR = 0  Strahl ist parallel zu Polygon t<0  Schnittpunkt hinter Augpunkt Schnittpunkt: t in Strahlgleichung einsetzen inside/outside-Test für Polygon (z.B.) mit even/odd-Regel Teil 8: Ray Tracing

Strahl-Box Schnitt t-Werte: Für alle konvexen Vielflächer gilt: Schnitte nur mit Ebenen, kein Polygon (inside/outside)Test notwendig! Durchschnitt: box Teil 8: Ray Tracing

Ray Tracing – Beleuchtung Beleuchtung = lokale Beleuchtung + Reflexionsanteil + Brechungsanteil Teil 8: Ray Tracing

Beleuchtungsmodell Am Schnittpunkt: Lokal (Phong): Rekursive Definition: I(P) = klokal Ilokal + krefl I(Pr) + ktrans I(Pt) klocal + krefl + ktrans = 1 Teil 8: Ray Tracing

Beleuchtung: lokale Beleuchtung Schattenfühler in Richtung L Umgebungslicht Diffuse Reflexion Spiegelnde Reflextion, z.B. Teil 8: Ray Tracing

Ray Tracing: Reflexion, Brechung Reflexionsstrahl Brechungsstrahl Brechungsgesetz Teil 8: Ray Tracing

Beleuchtung: Reflexion Irefl = krefl  Hrefl Irefl … Reflexionsanteil krefl … Reflexionskoeffizient des Materials Hrefl … Einfallender Teil in Reflexionsrichtung H refl a = b b a Teil 8: Ray Tracing

Beleuchtung: Transparenz Itrans = ktrans  Htrans Itrans … Transparenzanteil ktrans … Transparenzkoeffizient des Materials Htrans … Einfallender Teil in Brechungsrichtung A a H trans b B s i n a : s i n b = n : n B A Teil 8: Ray Tracing

Ray Tracing – Beispiele Teil 8: Ray Tracing

Ray Tracing Beispiel 1 Szene: 37 Kugeln 720 Polyg. Algorithmus: 9 Strahlen per Pixel Tiefe 5 Teil 8: Ray Tracing

Ray Tracing Beispiel 2 Szene: 3036 Primitive 2 Lichtquellen Algorithmus: 1 Strahl per Pixel 1.6 Mio. Strahlen Teil 8: Ray Tracing

Ray Tracing Beispiel 3 Szene: 1298 Polyg. 4 Kugeln 76 Zylider 35 Quadriken 5 Lichtquellen Algorithmus: Light-Buffer Teil 8: Ray Tracing

Ray Tracing Beispiel 3 – Detail Teil 8: Ray Tracing

Mängel Komplexität durch Menge an Strahlen (und dabei entstehende Schnitte) Restriktion der „Globalität“ auf Spiegelreflexion und Brechnung (keine globale diffuse Beleuchtung) Visuelle Mängel Anti-Aliasing Kein Halbschatten Tiefenschärfeneffekte Teil 8: Ray Tracing

Distributed Ray Tracing Anti-Aliasing, Halbschatten, diffuse Reflexion, etc. Teil 8: Ray Tracing

Distributed Ray Tracing Berücksichtigung folgender Effekte: Aliasing Unscharfe Spiegelung Milchglaseffekte Halbschatten Tiefenunschärfe Bewegungsunschärfe Teil 8: Ray Tracing

Anti-Aliasing Stochastisches Sampling mit Gauss-Gewichtung Teil 8: Ray Tracing

Unscharfe Spiegelung Simulation von gerichtet-diffusen Reflexionen durch Variation des Reflexionswinkels Teil 8: Ray Tracing

Halbschatten source light shadow penumbra Teil 8: Ray Tracing

Tiefenunschärfe Abhängigkeit von der Blende berücksichtigen (Durchmesser) pixel lens focus point Teil 8: Ray Tracing

Algorithmus (Distributed Ray Tracing) Große Anzahl an Strahlen - aber: Monte-Carlo Integration möglich Nur einen Strahl weiterverfolgen Integration eines Strahlenbündels Benötigte Strahlen (pro Pixel): Minimum: 5-10 Gute Qualität: 10-20 (für einen Effekt) Gute Gesamtqualität: 20-60 Teil 8: Ray Tracing

Distributed Ray Tracing – Bsp. Halbschatten, Blur, Spektren Teil 8: Ray Tracing

Distributed Ray Tracing – Bsp. Blur & Tiefenunschärfe Teil 8: Ray Tracing

Distributed Ray Tracing – Bsp. Teil 8: Ray Tracing

www.povray.org – Beispiele Teil 8: Ray Tracing

www.povray.org – Beispiele Teil 8: Ray Tracing

www.povray.org – Beispiele Teil 8: Ray Tracing

www.povray.org – Beispiele Teil 8: Ray Tracing

Ray Tracing – Weitere Beispiele Teil 8: Ray Tracing