Computergrafik Universität Osnabrück, Henning Wenke,

Ähnliche Dokumente
Probelektion zum Thema. Shadow Rendering. Shadow Maps Shadow Filtering

Photorealistische Computergrafik. Thorsten Grosch

Rendering Grundlagen Autodesk Maya. Grundlagen. Version Ingo Clemens brave rabbit

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

Photon Mapping. Proseminar How to make a P I X A R movie. Inhaltsverzeichnis. Andreas Schmidt 2011

Seminar Game Development Game Computer Graphics. Einleitung

(13) Hot Topics. Vorlesung Computergrafik T. Grosch

Photonik Technische Nutzung von Licht

Diplomarbeit. Neue Möglichkeiten durch programmierbare Shader. Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker

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

Kapitel 4: Schattenberechnung

Partikelvisualisierung

Einführung in die Computergrafik

Texture Based Direct Volume Rendering

Softwareprojekt Spieleentwicklung

GPU Programmierung. Thorsten Grosch

Verteiltes Rendering: Herausforderungen und Lösungsansätze

Global Illumination Globale Beleuchtung

Christina Nell. 3D-Computergrafik

0 Einführung. Computergrafik. Computergrafik. Abteilung für Bild- und Signalverarbeitung

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

Interaktive. mit der GPU

Photon Mapping. Einleitung. Lichtsimulationsverfahren. Radiosity [Goral 1984] Path Tracing [Kajiya 1986] Photon Mapping [Jensen 1994] Thorsten Grosch

Der Einsatz von HDRIs in LightWave 7

(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

Lights & Cameras Grundlagen Autodesk Maya. Grundlagen. Version Ingo Clemens brave rabbit

"rendern" = ein abstraktes geometrisches Modell sichtbar machen

Advanced Rendering Interior Szene

Computergrafik - Projekt

Computer Graphik I Intro

(12) Wiederholung. Vorlesung Computergrafik T. Grosch

Proseminar Computergraphik. Raytracing

Computergraphik III. Raytracing. Oliver Deussen Raytracing 1

Lokale Beleuchtungsmodelle

Computergrafik Universität Osnabrück, Henning Wenke,

Computergrafik SS 2016

Computergraphik Grundlagen

Seminar: Grafikprogrammierung

Prozedurale Texturen >>Was nicht passt wird passend gemacht...<<

Photon Mapping. 9. Vorlesung

Eine Einführung Computergrafik SS14 Timo Bourdon

GPU Programmierung. Thorsten Grosch

Workshop: Einführung in die 3D-Computergrafik. Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar

Vergleich von Forward und Deferred Rendering

FORSCHUNGSINTERESSEN Globale Beleuchtung, GPU Programmierung, Augmentierte Bildsynthese

Games Engines. Realtime Terrain Rendering

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

3D Programmierpraktikum: Schattenberechnung in Echtzeit

Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit. Direct 3D-Output für ein Rendering Framework

1 Transformationen. 1.1 Transformationsmatrizen. Seite 1

Computergraphik Grundlagen

Grundlagen der Spieleprogrammierung

Gameprogramming WS2013/14 Futurella von Pavel Belskiy und Felix Niemeyer Betreuer: Stefan Buschmann

Path Tracing. 8. Vorlesung

:= Modellabbildung. Bildsynthese (Rendering) Bildsynthese

PhysX Evaluation. Softwarepraktikum Computergraphik. Daniel Brock, Robert Kreuzer, Simon Kufner. 5. Juli 2010

How to make a PIXAR movie? WS 2012/2013

Architektur moderner GPUs. W. Sczygiol - M. Lötsch

Prüfungsprotokoll Computergrafik 1 und 2 (1692 & 1693) Prüfer: M. Felten von: Lindig Florian. Dauer: 30 min jeweils. Note: 1.

Graphische Datenverarbeitung und Bildverarbeitung

Computer-Graphik 2 Visibility Computations II Culling

Rendering. Ein kurzer Überblick. Hochschule Rhein-Main Fachseminar WS 09/10 Betreuender Dozent: Prof. Dr. Karl-Otto Linn.

Wima-Praktikum 2: Bildsynthese-Phong

Hardware Tessellation in DirectX11 zur Berechnung von Levels of Detail in Echtzeitanwendungen

Programmierpraktikum 3D Computer Grafik

RTT DeltaGen Suite. Materialeinstellungen für OpenGL, RTT RealTrace & Global illumination. Copyright 2010 by Realtime Technology AG

Computer-Graphik II Beschleunigung des Ray-Tracing

Überblick Echtzeit-Rendering. Uwe Domaratius

Praktikum: Spieleengine im Eigenbau

Implementierung eines bidirektionalen Path Tracers auf GPUs

die Planung eindrucksvoll präsentieren

Einführung in die Informatik 2

Shader für Geometrische Grundprimitive. Beispielszene mit vielen Kegeln unterschiedlicher Größe und Farbe

Teil 1: Modellierung. Einleitung. 3D Szene Inhalt. Objekte und ihre Beschreibung

Computer Graphics and Animation in Games

4.3 Beleuchtung und Schattierung

computer graphics & visualization

General Purpose Computation on GPUs

Algorithmen und Berechnungskomplexität II Prof. Dr. Rolf Klein

Wer sollte dieses Buch lesen? Softwarevoraussetzungen 2D-Software. Über diese Ausgabe

Raytracing und Szenengraphen

Karoline Grandy und Renate Schöfer

Berechnung von Formfaktoren

Binary Space Partitioning Trees: Konzepte und Anwendungen

Asteroids3D Seminar: Game Programming. Anita Dieckhoff, Pedro Flemming, Jan Ole Vollmer Betreuung: Christine Lehmann

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Computergraphik Grundlagen

SS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION

Computergrafik 2010 Oliver Vornberger. Kapitel 18: Beleuchtung

Rendering. Zur Erinnerung (Ray Tracing):

Computer-Graphik 2 SS 10 Real-time rendering

Licht und Schatten Visualieren mit dem PC. Andreas Asperl

Raytracing. Ausarbeitung zum Proseminarvortrag vom im Rahmen des Proseminars Computergraphik und Visualisierung TU München.

Rendering: Lighting & Shading

Non-Photorealistic Rendering

Integration von 3D-Visualisierungstechniken in 2D-Grafiksystemen

Komplexpraktikum Graphische Datenverarbeitung im WS 04/05

Zu meiner Person Was erwartet Sie? Vorlesungen Übungen. Welche Techniken lernen Sie kennen? Grafik-API Programmiersprache.

Einführung in Visual Computing

DirectX und OpenGL. Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch, 15. Februar 2006

Transkript:

Computergrafik Universität Osnabrück, Henning Wenke, 2012-07-09

Noch Kapitel XVI Realtime Ray Tracing

KD-Tree: Surface Area Heuristic Ziele der Aufteilung in Child Nodes: 1. Möglichst gleich viele Objekte in beiden 2. Möglichst wenig Objekte, die in beide eingetragen werden müssen 3. Idealerweise wäre es so, dass auch nächste Aufteilung optimal Wir nehmen jeweils Achse mit längster Ausdehnung und teilen in der Mitte Grobe Schätzung nur zu Punkt 1 Dadurch Reihenfolge der Achsenteilungen fest Um beides modellieren zu können, speichern wir trotzdem pro Node: Trennachse (1 Integer: 0:x, 1:y, 2:z) Position der Trennebene (1 Float) Left Child: Kleiner als Trennachse Right Child: Größer als Trennachse Bounding Box Ansatz auch möglich, aber unnötig aufwendig Für Gesamtszene aber BB hilfreich 3

Beispiel Unser Ansatz: 5 y D B C F A E 0 5 Elemente x 2 Elems 15 5 B F E 3 Elemente Besser: y D C A 3 Elemente 0 x 15 targetelementspernode 1, maxdepth 90000 4

Beispiel: 2D-Tree Aufbau 10 A E < Node 0 A,B,C,D,E splitaxis: 0 splitpos: 5 > BBox Szene x [0, 10] y [0, 10] y C B < Node 1 A,D splitaxis: 1 splitpos: 5 > < Node 2 B,C,E splitaxis: 1 splitpos: 5 > D Node 3 D splitaxis: 1 splitpos: 5 Leaf Node 4 A x [0, 5] y [5, 10] Leaf Node 5 / x [5, 10] y [0, 5] Leaf Node 6 B, C, E splitaxis: 0 splitpos: 7.5 > 0 x targetelementspernode 1 maxdepth 4 10 Node 13 C, E x [5, 7.5] y [5, 10] Leaf Node 14 B, C x [7.5, 10] y [5, 10] Leaf 5

I. Suche Pixel (7,7) enthaltende Leafs 10 A E Node 0 A,B,C,D,E splitaxis: 0 splitpos: 5 < > BBox Szene x [0, 10] y [0, 10] y (7,7) C B Node 1 A,D splitaxis: 1 splitpos: 5 Node 2 B,C,E splitaxis: 1 splitpos: 5 < > < > D Node 3 D x [0, 5] y [0, 5] Leaf Node 4 A x [0, 5] y [5, 10] Leaf Node 5 / x [5, 10] y [0, 5] Leaf Node 6 B, C, E splitaxis: 0 splitpos: 7.5 > 0 x 10 Pixel (7,7) enthalten in Leaf-Node 13 Node 13 C, E x [5, 7.5] y [5, 10] Leaf Node 14 B, C x [7.5, 10] y [5, 10] Leaf 6

10 y A II. Durchsuche Objekte Node 13 E (7,7) C B Node 1 A,D splitaxis: 1 splitpos: 5 Node 0 A,B,C,D,E splitaxis: 0 splitpos: 5 < > BBox Szene x [0, 10] y [0, 10] Node 2 B,C,E splitaxis: 1 splitpos: 5 < > < > D x 0 10 Node 3 D x [0, 5] y [0, 5] Leaf Node 13: C überlappt Pixel Node 13: E überlappt Pixel nicht Also: Färbe Pixel (7,7) gemäß Kreis C ein Node 4 A x [0, 5] y [5, 10] Leaf Node 5 / x [5, 10] y [0, 5] Leaf Node 13 C, E x [5, 7.5] y [5, 10] Leaf Node 6 B, C, E splitaxis: 0 splitpos: 7.5 Node 14 B, C x [7.5, 10] y [5, 10] Leaf > 7

Beispiel 8

Ray Tracing mit Shadow Rays 9

Rekursives Ray Tracing Spiegel 10

Beispiel 11

Ende Kapitel XVI Ab hier nicht mehr Klausurrelevant

I Moderne OpenGL Pipeline

Tesselation Tesselation Control Shader Tesselation Primitive Generation Tesselation Evaluation Shader Ab OpenGL 4.0 (2010) 14

Beispiel 15

Geometry Shader % Geometry Shader Ab OpenGL 3.2 (2009) 16

Beispiel 17

Vereinfachter Überblick Vertex Buffer Objects im globalen Speicher Transform Feedback Vertex Shader Tesselation Control Shader Tesselation Primitive Generation Tesselation Evaluation Shader Geometry Shader Rasterizer 18

II Global Illumination

Rendering Equation (z.b.) L x, ω ω ω n Ω x L x, ω = L e x, ω + Ω f r x, ω, ω L x, ω ω n dω James T. Kajiya: The rendering equation. SIGGRAPH 1986 20

Global Illumination 21

Path Tracing Monte Carlo Raytracing Numerische Lsg der Rendering Equation Verbesserungspotential: Verhältnis Bildqualität / Strahlenzahl James T. Kajiya: The rendering equation. SIGGRAPH 1986 22

Bi-Directional Path Tracing Manche Lichtquelle kaum erreichbar Beginne Pfade vom Betrachter (Path Tracing) & von Lichtquellen (Particle Tracing) aus Verbinde diese Lafortune, Willems: Bi-Directional Path Tracing. SIGGRAPH 1993 23

Metropolis Light Transport Speichere Pfade, die viel beitragen Bilde Varianten davon Veach, Guibas: Metropolis Light Transport. SIGGRAPH 1997 24

Radiosity Zur Ausleuchtung einer Szene unabhängig vom Betrachterstandpunkt Getrennt vom Rendering Nur Diffuse Komponente der Globalen Beleuchtung Berechnet für Patches konstanter Helligkeit LGS modelliert Abhängigkeit aller Patches untereinander Analytisch: O(n 3 ) Numerisch: O(n 2 ) Hanrahan: A Rapid Hierarchical Radiosity Algorithm,1993 25

Radiosity II Progressive Refinement Wähle möglichst helles Senderpatch Versende dessen Radiosity an alle anderen Patches Nimm wieder helles Patch, usw. Vorteil: Nur O(n) pro Iteration Kann bei ausreichend guter Näherung abgebrochen werden 26

Radiosity Anwendung: Lightmaps 27

Photon Mapping Schritt I: Erstellen der Photon Map (statisch) Verfolge Photonen ausgehend von Lichtquelle analog zu Path/Particle Tracing durch die Szene Speichere Photonen an allen Orten des Auftreffens in KD- Tree Spekulare Photonen oft gezielt verschossen & gesondert gespeichert Jensen, ab 1993/1994 KD-Tree & GPU Implementierungen später 28

Photon Mapping II Schritt II: Rendering Für verschiedene Rendertechniken nutzbar Beispiel einfaches Raytracing: Berechne Schnittpunkt mit Objekt Suche dann in Photon Map(s) alle Photonen in einer bestimmten Umgebung oder die n Nächsten Berechne damit indirekte Beleuchtung Schneller Ansatz für GI Anders als bei Radiosity auch spekulare Komponente möglich Besser: Kombination mit Path Tracing, etc. X 29

Volume Rendering 30

III Mobile-, Web- & Multiplattform Graphics

Web & Smartphones

Web

PC x x 2.01 (Beta) x 34

Produktzyklus Xbox 360: 10 Jahre Konsolen

Ausblick: Remote Rendering 36

Aufbau der Klausur Soll Stoff in Breite testen Ca. 17 Aufgaben Math. Grundlagen ca. 20 % Rastergrafik mit OpenGL gut 60 % OpenCL + Partikelsysteme + Raytracing knapp 20 % Lösungswege oft recht ähnlich zu bekannten aus Vorlesung, Übung & Probeklausur 39

Klausurrelevanter Stoff Alle Vorlesungs- & Übungsinhalte, außer: OpenCL /OpenGL Befehle OpenGL Befehle können aber angegeben sein (Nicht ausgeklammert sind: GLSL / OpenCL C) Baryzentrischen Koordinaten Vorlesung 9. 7.2012 (zweite Hälfte) 3D-KD-Tree Raytracing: Nur ganz grob das Prinzip Nicos Exkurse in den Übungen LWJGL spezifisches (FloatBuffer, ) 40

Morgen Besprechung der Probeklausur Evaluation dieser Veranstaltung 41