Raytracing Modell Laufzeitoptimierungen Schnittalgorithmen Szenendatenstrukturen. Verbesserung der Bildqualität

Ähnliche Dokumente
Verbesserung der Bildqualität

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

4.7 Globale Beleuchtungsmodelle

Rendering. (illumination/shading) Beleuchtungsmodelle. Schattierung von Polygonen. Lokale Beleuchtungsmodelle

Rendering: Lighting and Shading

Computergrafik 1 Beleuchtung

Probelektion zum Thema. Shadow Rendering. Shadow Maps Shadow Filtering

BlendaX Grundlagen der Computergrafik

Ray Tracing. 2. Ray Tracing-Prinzip und -Algorithmen. 3. Schnittpunkt- und Normalenberechnung

Beleuchtung Schattierung Rasterung

Beleuchtung. in Computerspielen

Raytracing. Tobias Pfeiffer. 29. November Freie Universität Berlin Fachbereich Mathematik und Informatik

Graphische Datenverarbeitung

Wima-Praktikum 2: Bildsynthese-Phong

Beleuchtung. Matthias Nieuwenhuisen

Beleuchtungsmodelle und Shading

3.5 Methode des gleitenden Horizonts

Computergrafik 2010 Oliver Vornberger. Kapitel 18: Beleuchtung. Vorlesung vom

Global Illumination: Raytracing. Die drei Reflexionstypen. ideal diffus (Lambertian) ideal reflektierend. richtungsabhängig diffus (Phong)

Lokale Beleuchtungsmodelle

Computergraphik. Visual Computing (VCM)

Teil 7: Beleuchtung Beleuchtungsmodelle, Schattierungsmodelle

Kapitel 1. Globale Beleuchtung. 1.1 Ray Tracing Schatten, Reflexion und Brechung

Computergrafik Universität Osnabrück, Henning Wenke,

die Planung eindrucksvoll präsentieren

Graphische Datenverarbeitung und Bildverarbeitung

Aus Zahlen werden Bilder. Jan Tobias Mühlberg

Kapitel 4: Schattenberechnung

Graphische Datenverarbeitung Visualisierungstechniken. Prof. Dr. Elke Hergenröther

4.3 Beleuchtung und Schattierung

1 Transformationen. 1.1 Transformationsmatrizen. Seite 1

Beleuchtung Schattierung Rasterung

Computergraphik Grundlagen

Seminar Game Development Game Computer Graphics. Einleitung

Computergrafik 2010 Oliver Vornberger. Kapitel 18: Beleuchtung

CGR I Beleuchtung und Schattierung

Globale Beleuchtung. Thorsten Grosch. Thorsten Grosch Seit September 2009 Juniorprofessor für CV in Magdeburg

Graphische Datenverarbeitung

3.6 Schattenberechnung

Simulation multipler Streuung an Haaren mit Hilfe eines Photon-Mapping-Ansatzes

Raytracing. Beschleunigungsverfahren

Ray Tracing. Kapitel Grundlagen. Abbildung 23.1: Prinzip der Strahlverfolgung

Ray Tracing. Kapitel Grundlagen. Abbildung 24.1: Prinzip der Strahlverfolgung

Teil 7: Beleuchtung. Einleitung. Einleitung. Beleuchtungsmodelle, Schattierungsmodelle

Echtzeit Videoverarbeitung

Photonik Technische Nutzung von Licht

CAUSTICS & GODRAYS. Jacob Skuratovski

Sichtbarkeitsalgorithmen im Zusammenhang mit CAD

Parallele und funktionale Prog. Wintersemester 2012/ Übung Abgabe bis , 10:00 Uhr

Rendering. Rendern (Umsetzung oder Übertragung) Ursprüngliche Rendergleichung

Beleuchtungsverfahren. 1. Vorbemerkungen. 2. Klassifizierung. 3. Beleuchtungsmodelle. 4. Beleuchtungsalgorithmen

Graphische Datenverarbeitung und Bildverarbeitung

Einbeziehung von Elementen der 3D-Computergrafik in den Mathematikunterricht der Sekundarstufe II im Stoffgebiet Analytische Geometrie

12. Globale Beleuchtungsmodelle (Raytracing, Radiosity)

3.3 Beleuchtung und Schattierung

Lokale Beleuchtungsmodelle

Seminar Computerspiele Räumliche Datenstrukturen. Ralf Pramberger

Die Welt der Shader. Fortgeschrittene Techniken III

Licht und Schatten Visualieren mit dem PC. Andreas Asperl

Längenbeziehungen bei der Lochkamera

"rendern" = ein abstraktes geometrisches Modell sichtbar machen

5. Übungsblatt (Computergrafik-Praktikum) Raytracing einer triangulierten Szene

Beschleunigungen auf Szenenebene

4.4 Glättung von Kanten

Computergrafik Universität Osnabrück, Henning Wenke,

5 Mapping-Techniken. 5.1 Motivation

Teil 9: Radiosity. Radiosity. Prinzip. Simulation globaler Lichtverteilung

Newtek Lightwave Grundlagen der 3D-Vektorgrafik

Photorealistische Computergrafik. Thorsten Grosch

Grundlagen der Spieleprogrammierung

Computer Graphik I Globale Beleuchtung Ray Tracing

Photon-Mapping. University of Bonn & GfaR mbh

Computergraphik III. Raytracing. Oliver Deussen Raytracing 1

Photorealistische Computergrafik. Thorsten Grosch

Parallele und funktionale Prog. Sommersemester Übung Abgabe bis , 10:00 Uhr

Einführung Augmentierte Bildsynthese

Sampling. 7. Vorlesung

(12) Wiederholung. Vorlesung Computergrafik T. Grosch

Rendering: Lighting & Shading

Global Illumination Globale Beleuchtung

3. Erklären Sie drei Eigenschaften der bidirektionalen Reflektivität (BRDF).

Realistische Darstellung von Objekten. Proseminar Computergraphik Matthias Köngeter

Christina Nell. 3D-Computergrafik

Astro Stammtisch Peine

Kollisionserkennung

DISTRIBUTED RAYTRACING

(7) Normal Mapping. Vorlesung Computergraphik II S. Müller. Dank an Stefan Rilling U N I V E R S I T Ä T KOBLENZ LANDAU

Globale Beleuchtungsrechnung: 12. Ray Tracing

(4) Beleuchtung. Vorlesung Computergraphik II S. Müller. Dank an Alexander Heinz U N I V E R S I T Ä T KOBLENZ LANDAU

2.2. Schnitte von Liniensegmenten

Programmierpraktikum 3D Computer Grafik

Raytracing. Ausarbeitung zum Seminarvortrag Raytracing am Proseminar How to make a Pixar Movie. Technische Universität München

:= Modellabbildung. Bildsynthese (Rendering) Bildsynthese

Kapitel 8 Kollisionserkennung

9 Arrangements und Dualität

Parallele und funktionale Programmierung Wintersemester 2013/ Übung Abgabe bis , 16:00 Uhr

Beleuchtungsmodelle. Realistische Bilder. Ausgedehnte Lichtquellen color bleeding. spiegelnde Reflexion. komplexe Oberflächen.

Transkript:

Modell Laufzeitoptimierungen Schnittalgorithmen Szenendatenstrukturen Thomas Jung Verbesserung der Bildqualität Realzeitanforderungen begrenzen Bildqualität Fotorealismus nur mit globalen Beleuchtungsmodellen kann fotorealistische Grafiken generieren OpenGL- Mehrpassverfahren Belegarbeit Friedemann Schmidt WS1998/99 Lokale Beleuchtungsmodelle Echtzeitfähig Reflection mapping (1-stufige Reflexion) Transparenz ohne Lichtbrechung Schatten nur mit Mehrpassverfahren (shadow volumes oder shadow mapping) oder sehr eingeschränkt: (scene space) ambient occlusion Globale Beleuchtungsmodelle Meist nicht echtzeitfähig Berücksichtigen Interobjektreflektion Diffuse Reflexion: Radiosity Spiegelnde Reflexion: Brechung und Reflexion lange bekannt seit Rene Descartes (1637!) Zur Erklärung der Form des Regenbogens in der Computergrafik Hidden-Surface-Removal: Appel 68, Goldstein 71 Beleuchtung: Kay/Greenberg 79, Whitted 80 Whitted 1

Basis: Teilchenmodell Licht breitet sich in Form von Strahlen aus Strahlen werden an Oberflächen reflektiert oder gebrochen Einige Strahlen gelangen in das Auge des Betrachters Strahlen die nicht das Auge treffen sind egal Strahlen verfolgen vom Ziel zur Quelle Lichtausbreitung Strahlen treffen selten Lichtquelle genau Diffuse Beleuchtung berücksichtigen Verfolgung von Strahlen durch die Szene Beginn vom Auge durch alle Pixel des Bildes Bei Auftritt auf Objekt Verfolgung des reflektierten und des gebrochenen Strahls Jeweils Strahlen zu allen Lichtquellen für diffuse Beleuchtung Terminierung bei erreichter Reflexionstiefe Steuerung des Strahls w s a d Drehung der Szene mit der Mouse Strahlen, die nichts treffen, werden nicht dargestellt Für jede Zeile des Bildes Für jeden Pixel der Zeile Bestimme Strahl vom Auge zum Pixel Pixelfarbe = Raytrace(Strahl) Raytrace(Strahl) Falls weiterverfolgen Wenn Strahl Objekt schneidet und Schnittpunkt ist bisher am nächsten notiere Schnitt Wenn kein Schnitt dann Ergebnis := Hintergrundfarbe sonst Ergebnis := Raytrace(reflektierten Strahl) + Raytrace(gebrochenem Strahl) 640 x 480 Für alle Lichtquellen Wenn Strahl zur Lichtquelle Objekt schneidet Schleifenabbruch, nächste Lichtquelle Wenn kein Schnitt gefunden Ergebnis += lokale Beleuchtung 2

Lokale Beleuchtung Keine Brechung Spiegelung der Lichtquelle lokale Beleuchtung Zusätzlich reflektierter Strahl Zusätzlich gebrochener Strahl Reflektanzvektor R Augvektor A Normale N Halbvektor H Lichtvektor L So nur bei der ersten Reflexion (nicht bei Whitted) ist sehr rechenintensiv Die meiste Zeit finden Schnitttests statt Ansätze zur Beschleunigung Effiziente Schnittberechnungen Hüllobjekte, um Schnitte auszuschließen Szenendatenstrukturen, um Anzahl der Schnittkandidaten einzugrenzen Effiziente Schattenberechnung Schnell für Primitivobjekte Kugeln, Quader, Zylinder Eignen sich als Hüllobjekte Polygonale Oberflächen Müssen polygonweise getestet werden Aufwand steigt linear mit der Polygonanzahl Freiformflächen Müssen eigene Schnittfunktion anbieten Oder in Polygone konvertiert werden Strahl mit jeweils zwei parallelen Ebenen schneiden tklein, tgross(vorzeichenbehaftet!) Wenn größtes tklein kleiner als kleinstes tgross dann Schnitt Aufwand: 8 Skalarprodukte und ca. 6 Vergleiche -7 xklein Xklein (7) größer als ygross () -3-3 yklein yklein Start yklein (-3) kleiner als ygross () 0 0 Start ygross 7 ygross 8 xklein xgross Normalerweise Schnitt mit allen Objekten nötig Schnitt Strahl-Octree erübrigt Schnitt mit den meisten (Hüll-) Objekten Potentiell getroffenenes Objekte Strahl Diese Objekte müssen nicht betrachtet werden Aufbau Lege Quader q um Szene Für alle Objekte o Einfügen(o, q) Einfügen (Objekt o, Quader q) Für alle acht Teilquader t von q Wenn o ganz in t passt Ggf. t erstellen Einfügen(o, t) return Ordne Objekt o Quader q zu Schnitt Schnitt ( Quader q, Strahl s) Wenn q leer return NULL Wenn Schnitttest(q, s) Für alle acht Teilquader t von q res += Schnitt (t, s) Für alle zugeordnenten Objekte o res += Schnitttest(o, s) return nächsten Schnitt(res) 3

Shadow feeler erfordert pro Lichtquelle Schnitt mit Gesamtszene Light Buffer Quader um die Lichtquelle Alle potentiell verdeckenden Objekte der Umgebung werden in Light buffer abgebildet Verdeckungstest durch Zugriff auf Light Buffer bzw. Test mit allen dort vermerkten Polygonen Pro Lichtquelle Light Buffer erforderlich! Shadow feeler (Ausschnitt RT-Algorithmus) Für alle Lichtquellen Wenn Strahl zur Lichtquelle Objekt schneidet Schleifenabbruch, nächste Lichtquelle Wenn kein Schnitt gefunden Ergebnis += lokale Beleuchtung ist globales Beleuchtungsmodell Strahlen vom Auge durch Pixel in die Szene Aufteilung in reflektierten und gebrochenen Strahl Lokale Diffuse Beleuchtung durch nicht verdeckte Lichtquellen Light Buffer beschleunigt Verdeckungstest Beschleunigung durch Hüllobjekte (Quader) Nur Schlagschatten Weiche Schatten z. B. durch Radiosity Halbtransparente Objekte schwierig Keine indirekte Beleuchtung Z. B. über Spiegel Lichtreflexion nur in eine Richtung Sogar Phong-Modell erzeugt ausgedehntes Highlight Lichtquellen, die über Spiegel diffus beleuchten Erster Pass: Lichtstrahlen werden von der Lichtquelle ( rückwärts ) zu interessanten Flächen gesendet und dort vermerkt Zweiter Pass: Normales (Strahlen vom Betrachter zur Szene) wobei diffuse Terme vermerkte Lichtquellen berücksichtigen Spiegelnde Reflexion nicht nur in eine Richtung Strahl wird gestreut Statt infinitesimalem Strahl wird Kegel verwendet Praktisch kaum zu implementieren Phong-Modell? Cone Tracing Ermöglicht Halbschatten, Bewegungsunschärfe und begrenzte Tiefenschärfe Für jedes Pixel 16 Strahlen Stochastisches Antialiasing Jeder Strahl wird bei der Reflexion in der Richtung gemäß seiner Nummer verändert Wichtigkeitsfunktion garantiert Häufung um die Hauptreflexion Zufällige Abweichung ( Jittering ) innerhalb der 16 initialen Subpixel Bei der Reflexionsänderung innerhalb des Intervalls Monte Carlo Integration Wahrscheinlichkeit Richtungsänderung Strahl 12 4

Klassisches -Verfahren unterstützt weder weiche Schatten noch indirekte Beleuchtung Weiche Schatten durch Radiosity-Verfahren oder Distributed Indirekte Beleuchtung durch Backwards Antialiasing beim Distributed oder durch Super Sampling