Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Pre-Computed Radiance Transfer – PRT in Anlehnung an SigGraph 2005.

Ähnliche Präsentationen


Präsentation zum Thema: "Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Pre-Computed Radiance Transfer – PRT in Anlehnung an SigGraph 2005."—  Präsentation transkript:

1 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Pre-Computed Radiance Transfer – PRT in Anlehnung an SigGraph 2005 Course: PRT Theory and Practise HS: Aspects of Game Engine Design

2 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Agenda - Einleitung - Herausforderung - Precomputed Radiance Transfer - Was ist PRT? Was ist es nicht? - Wie funktionierts? – Einwenig Mathematik - PRT weitergedacht - Zusammenfassung - Literatur - DirectX API und Demos

3 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Einleitung - Anforderungen an Spiele - Spieler sollen das Gefühl haben Teil der virtuellen Welt zu sein. Hohe Anforderung an Realismus, z.B.:Hohe Anforderung an Realismus, z.B.: komplexe Szenen komplexe Szenen realistische Interaktion mit Objekten realistische Interaktion mit Objekten intelligentes Verhalten von Gegnern intelligentes Verhalten von Gegnern Soundeffekte Soundeffekte Beleuchtungseffekte Beleuchtungseffekte Beleuchtungseffekte spielen bei der Synthese photorealistischer Bilder eine übergeordnete Rolle. Bisher: Phong Shading, Texturen (Lightmaps) + Simulation von Schatten etc.  Physikalisch inkorrekt, da stark vereinfacht oder zu statisch  Keine globalen Beleuchtungsmodelle  PRT ist die Antwort

4 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Einleitung – Die Herausforderung (1) - Simulation komplexer physikalischer Zusammenhänge erforderlich... Beleuchtungsumgebungen Transporteffekte Meterial-eigenschaften Wie berechnet man diese Effekte? Die Rendering Equation gibt Antworten.

5 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Einleitung – Die Herausforderung (2) - Die Rendering Equation (RE) ist eine math. Formalisierung der Beleuchtungsproblematik. - Alle Beleuchtungsmodelle setzen Teile der RE um. Jedes Beleuchtungsmodell lässt sich an der RE messen. Ziel: Effiziente Umsetzung vieler Aspekte der RE Vom Punkt p ausgehende Strahlung Vom Punkt p ausgehende Strahlung Radianz-funktionRadianz-funktion Transfer-funktionTransfer-funktion Integral über Hemisphäre Hemisphäre

6 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Einleitung – Herausforderung (3) - Echtzeitsysteme müssen drei Schwierigkeiten bewältigen: - Komplexe Materialien (BRDF) - Integration über alle Richtungen - der Hemisphäre über einem Beleuchtungspunkt - Reflektion und Verdeckung

7 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Was ist PRT? - Methode zur Simulation globaler Beleuchtungseffekte - Trennt Beleuchtung und Transporteigenschaften - Berechnet ohne Kenntnis von Lichtquellen Strahlungstransfer in einem Punkt offline - Schattiert Objekte durch Kombination von Lichtquellen und vorberechneten Transportdaten - Schatten, Color-Bleeding, Caustics - Bewegliche Lichtquellen und Objekte - Kompression durch Spherical Harmonics oder Haar Wavelets - Gut für Simulation in Echtzeitumgebungen geeignet: - Einfaches Skalarprodukt im diffusen Fall - Vektor-Matrix-Multiplikation für spekularen Fall - Area Lights und generelle Beleuchtungsumgebungen  realistische weiche Schatten - Performanz nicht abhängig von Anzahl der Lichtquellen

8 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Grenzen von PRT – Was ist es nicht - Arbeitet mit entfernten Lichtquellen; lokale Lichtquellen möglich aber teuer - Annahme: Beleuchtung variiert bei entfernten Lichtquellen kaum - Lokale Lichtquellen erfordern Multi-Sampling/Gradients - Objekte nicht verformbar - Animation von Objekten im allgemeinen schwierig, aber machbar - Hier: Neighbourhood-Transfer: Großes Objekt beeinflusst nahe kleine Objekte (z.B. Terrain - Charakter), Interaktion in anderer Richtung problematisch. - Nur niederfrequentes Licht effizient simulierbar

9 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Die Idee - Projektion von T und L auf orthonormale Basisfunktionen - Da die Basisfunktionen orthonormal gewählt wurden läst sich das Integral als Skalarprodukt darstellen - Als Basisfunktionen bieten sich Spherical Harmonics an - SHs sind orthonormal - SHs sind rotationsinvariant  Keine Fluktuationen bei Animation der Lichtquelle  Keine Aliasing Probleme Transferfunktion: Die Antwort eines Objektes auf seine Beleuchtung kann als Funktion aufgefasst werden, die eingehende Strahlung auf ausgehende abbildet. Beleuchtungsfunktion: Die Lichtquellen können als Funktionen aufgefasst werden.

10 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Basisfunktionen - Funktionen lassen sich als Summe gewichteter Basisfunktionen darstellen (Projektion auf Basisfunktionen):

11 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Orthogonal und Orthonormal - Orthogonale Basis-Funktionen haben folgende Eigenschaft: - Für die Untergruppe der orthonormalen Basisfunktionen gilt: c = 1

12 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Der Clou 1 - Vektor t wird vorberechnet - Vector l wird zur Laufzeit berechnet - Effiziente Berechnung des Skalarprodukts auf Shadern - Spekularer Fall abhängig von Blickrichtung  Transfermatrix In Sachen Performanz: - Licht ist niedrigfrequent - Lichtquelle weit entfernt  Beleuchtung variiert vernachlässigbar für verschiedene Punkte auf der Oberfläche

13 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Neumann Expansion 0 mal Reflektiert 1 mal Reflektiert 2 mal Reflektiert - Transportinformationen der direkten Beleuchtung und von n Bounces in einem Transfer-Vektor - Unabhängig von der Beleuchtung - Transporteffekte wie weiche Shatten, Color-Bleeding, Caustics sind aufwendig zu berechnen  vorberechnet - Transporteffekte wie weiche Shatten, Color-Bleeding, Caustics sind aufwendig zu berechnen  vorberechnet - Im spekularen Fall eine Transfermatrix

14 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization PRT unter der Lupe - Wie reflektiert ein Objekt eintreffende Strahlung auf sich selbst und seine Umgebung? - Wie werden kleine Objekte in der Umgebung beeinflusst? Umgebung beeinflusst? - Szenario: - Self-Transfer: Isoliert betrachtetes Objekt O - Neighbourhood-Transfer: Bewegliche/Neue Objekte R (hier nur Einfluss O → R ) - Spekulare Oberfläche - Beleuchtung L env durch unendlich weit entferntes Licht (Environment Map), - Aufgaben: - Welche Strahlung verlässt Punkt p? - Auf der Oberfläche? - An einem freien Raumpunkt? - Berechnung der Transfermatrizen?

15 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Outgoing vs. Transfered incident - Ziel ist es die Outgoing Radiance zu berechnen - Aber wir wollen: - Spekulare Effekte -Outgoing Radiance ist abhängig von der Blickrichtung -BRDF ist nur für den diffuse Komponente konstant - Neighbourhood-Transfer: -Wir wollen den Einfluss eines Objektes O auf ein anderes R zur Laufzeit berechnen  Selbst im diffusen Fall reicht ein Vektor nicht aus, da die Normalen des Recievers R unbekannt sind  Outgoing Radiance kann an diesen Punkten nicht vorberechnet werden Die Lösung: Transfered incident Radiance

16 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Transfered Incident Radiance - Beschreibt für jeden Punkt p der Szene (auf O, oder frei im Raum) die einfallende Strahlung aus allen Richtungen  Unterscheidet sich von L env (Verdeckung, Reflektion)  Was sieht Punkt p? – Oder wie läst sich L env durch eine andere Funktion maskieren? → Produkt Projektion  Sphärische Funktion; für jeden Punkt p anders  Neighbourhood-Transfer: Muss für freie Raumpunkte berechnet werden; dann Interpolation Muss für freie Raumpunkte berechnet werden; dann Interpolation

17 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization - Abhängigkeiten linear! - Formal: -, Bekannt zur Laufzeit -, wird berechnet. Wie? -, ist gesucht Die Transfermatrix Projektion auf Basisfunktionen

18 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization - Die ite Spalte von approximiert die Erscheinung der Szene, aus der Perspektive von p, wenn nur die ite Basisfunktion y i zur Beleuchtung eingesetzt wird! - Die gesamte Beleuchtung ergibt sich aus der Linearkombination aller Basislichter.  Vektor-Matrix-Multiplikation liefert - := Das Licht von y i, welches p direkt oder indirekt beleuchtet. - Projektion von auf die jte Basisfunktion von liefert Eintrag ji von T: Die Transfermatrix

19 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Einschub... Produkt Projektion... - Zentrale Frage: Was sieht Punkt p? - Anders formuliert: Mit welcher Funktion, lässt sich L env maskieren? - Mathematisch: - a(s): unbekannte Beleuchtungsfunktion - b(s): bekannte Schattenfunktion - c(s): Maskierte Beleuchtungsfunktion - Gesucht linearer Operator, der Koeffizienten von a(s) auf Koeffizienten von c(s) abbildet

20 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization - Wir können nun die Transfermatrix T 0 für die direkte Beleuchtung berechnen und erhalten: - Wie geht‘s weiter? – Neuman Expansion... - Rekursion mit T 0 als Start... - Im Wesentlichen Analog zum einfachen diffusen Fall... Transfermatrizen

21 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Grober Ablauf - Berechnung der Transfermatrizen offline - Berechnung von L xfer zur Laufzeit mit Transfermatrizen - Auswertung der BRDF - Die Outgoing Radiance ergibt sich aus der Summe der Transfered Incident Radiance und der in p reflektierten Strahlung - Berechnung der Strahlung, die Punkt p in Blickrichtung verlässt

22 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Zusammenfassung - Globale Beleuchtungseffekte für Echtzeit- Anwendungen - Komplette Entkopplung von Transferfunktionen und Lichtquellen - Offline Berechnung - Projektion auf Basisfunktionen - Spherical Harmonics - Oder Haar Wavelets - Transfermatrizen - Self-Transfer und Neighbourhood-Transfer - PRT und DirectX

23 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Literatur - Siggraph2005 Course: PRT – Theory and Practice [Sloan, Kautz, Lethinen] - Precomputed Radiance Transfer for Real-Time Rendering in Dynamic, Low-Frequqncy Environments [Sloan, Kautz, Snyder] - Spherical Harmonic Lighting: The Gritty Details [Green] - DirectX SDK Dokumentation

24 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Das wars vom ersten Teil... Vielen Dank für die Aufmerksamkeit... Fragen? Und zum Abschluss weiter zu DirectX und Demos... ? ? ?

25 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization DirectX und PRT Einfaches lokales Beleuchtungsmodell, Keine Schatten PRT liefert weiche Schatten

26 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization DirectX und PRT Subsurface Scattering mit PRT

27 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization DirectX API 1.Offline: -ID3DXPRTEngine: Berechnet Transfer- Vektoren und Matrizen 2.Source Radiance: -D3DXSHEvalDirectionalLight -D3DXSHEvalSphericalLight -D3DXSHEvalConeLight -D3DXSHEvalHemisphereLight 3.Exit Radiance: -Berechnung auf Vertex-/Pixelshader

28 Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization DirectX SDK Live Demo... And Action... And Action...


Herunterladen ppt "Hauptseminar – Computer Graphics Stephen Lauschke computer graphics & visualization Pre-Computed Radiance Transfer – PRT in Anlehnung an SigGraph 2005."

Ähnliche Präsentationen


Google-Anzeigen