10.07.2008 T. Wallrath - 1 -
Optimierung des Photon Mapping Verfahrens durch Verbesserung
der Radiance Estimate Berechnung und Einsatz von
Radiosity Photonen
Diplomarbeit
10.07.2008 T. Wallrath - 2 -
Übersicht
• Radiosity / Photon Mapping
• Zielsetzung
• Radiosity-Photonen
• Ergebnisse und Probleme
• Fazit & Ausblick
10.07.2008 T. Wallrath - 3 -
Radiosity
• Einteilung der Szene in Patches
• Umgebung vollständig diffus
• constant radiosity assumption
B e E e es 1
n
B s F es
10.07.2008 T. Wallrath - 4 -
Photon Mapping
• simuliert alle Lichtpfade
• geometrieunabhängig
• Two-Pass Algorithmus1. Photon Tracing
– Emission und Verfolgung durch die Szene– Speicherung in Photon Map
2. Rendering- Abschätzung der Beleuchtungsstärke anhand
Photonendichte (Radiance Estimate)
10.07.2008 T. Wallrath - 5 -
Probleme
• Radiosity– nur diffuse Umgebungen– Vorverarbeitung der Szene sehr aufwendig
• Photon Mapping– hohe Photonenanzahl notwendig– direktes Licht: Raytracing– indirektes Licht: Final-Gathering
10.07.2008 T. Wallrath - 6 -
Zielsetzung
• Radiosity-Methoden in Photon Mapping Umgebung- Radiosity-Photonen
• Verbesserung der Darstellung direkten Lichtes
• Anzahl benötigter Photonen senken
10.07.2008 T. Wallrath - 7 -
Umsetzung
• Integration von Radiosity-Photonen in Raytracing/Photon Mapping-Framework
• Realisierung von diffusem, direkten Licht
• Schattenphotonen
• Refinement-Mechanismus
10.07.2008 T. Wallrath - 8 -
Radiosity-Photonen
• sample-basiertes Radiosity-System
• Zuordnung eines Raumwinkels
• Abdeckung der beleuchteten Oberfläche durch Photon-Splats
• Bestimmung der Beleuchtungsstärke durch klassische Radiosity
10.07.2008 T. Wallrath - 9 -
Radiosity-Photonen
• durch Raumwinkel definiert sich Radiosity-Splat
A d 2
AA
cos
r2A
10.07.2008 T. Wallrath - 10 -
Radiosity-Photonen
• Erweiterung der Photon-Datenstruktur– Position– Lichtstrom– Einfallswinkel– Radius– Formfaktor– BundleId
10.07.2008 T. Wallrath - 11 -
Sampling
• Photon Mapping– LVK-Sampling durch Zufallszahlen
• Radiosity-Photonen– möglichst gleichmäßige Abdeckung der Oberfläche– Kontrolle über Refinement-Prozess
Halton-Sequenz
10.07.2008 T. Wallrath - 12 -
Halton-Sampling
• Low-Discrepancy-Sequenz
• Erzeugung einer Quasi-Zufallszahl durch einen Index
• Periodizität
• Mehrdimensionale Haltonsequenzi 2 i , 3 i , 5 i , ...
10 68 0,86
10.07.2008 T. Wallrath - 13 -
Photonen-Pool
PhotonIdLightId GroupIdLevel
0 1...
N0
BundleId
1...
N0
0
• fester Ausgangspool• Einteilung in
Photonengruppen• Gleicher Indexraum pro
Lichtquelle
• BundleId als eindeutiger Index einer Gruppe
• Level des Refinement-Grades
10.07.2008 T. Wallrath - 14 -
Radiance Estimate
Ep
Nsp
A spF A e A s
p N
?
10.07.2008 T. Wallrath - 15 -
Fallback-Funktion
1. Keine Beleuchtung (E=0)
2. Klassisches Photon Mapping
3. Formfaktor-Raytracing
10.07.2008 T. Wallrath - 16 -
Refinement
• Steuerung der Verfeinerung durch Exponenten der Haltonbasen
• Indizes der neuen GruppenNewGroupIdi = OldGroupId + i * Nl
NewBundleIdi = Bl + NewBundleIdi + LightId * Nl+1
N g b 1k 1 b 2
k2 ... b nk n
10.07.2008 T. Wallrath - 17 -
RefinementPhotonIdLightId GroupIdLevel
0 1...
4
BundleId
1...
4
0
1 0 159131721
5913172125
10.07.2008 T. Wallrath - 18 -
Refinement
10.07.2008 T. Wallrath - 19 -
Orakel
• Entscheidet, ob Gruppe verfeinert wird
• Analysiert Gruppe während Tracing-Vorgangs
• Drei Orakel-Funkionen:1. BFA-Orakel
2. Lischinski-Orakel
3. Geo-Orakel
10.07.2008 T. Wallrath - 20 -
BFA-Orakel
F A e A sA e B s BFAMAX
10.07.2008 T. Wallrath - 21 -
Lischinski-Orakel
F A e A s
max F A e A s
min B s BFMAX
10.07.2008 T. Wallrath - 22 -
Geo-Orakel
• Detektion von Schattenkanten
• Unterteile, falls Licht- und Schattenphotonen einer Gruppe auf einem Primitiv landen
10.07.2008 T. Wallrath - 23 -
Ergebnisse
• Geo-Lischinski-Refinement
1172 Photonen2422 ms
5556 Photonen2783 ms
19712 Photonen4239 ms
10.07.2008 T. Wallrath - 24 -
Ergebnisse
• Fallback-Methoden– 2592 Gruppen / 31104 Photonen
E = 0
5792 ms
Photon Mappingr = 0,6
9262 ms
Formfaktor-Raytracing20 Schattenfühler
34504 ms
10.07.2008 T. Wallrath - 25 -
Ergebnisse
• Vergleich der Verfahren
Formfaktor-Raytracing100 Schattenfühler
43531 ms
Photon Mapping31104 Photonen
r = 0,123642 ms
Radiosity-Photonen31104 Photonen
4789 ms
10.07.2008 T. Wallrath - 26 -
Fazit & Ausblick
• Qualität für direktes Licht nicht ausreichend• Abdeckung durch Splats verbessern
– Optimierung der Halton-Parameter– Alternative Sampling-Strategien– Alternative zur empirischen Radiusverdoppelung
• neue Konzepte zur Schattendarstellung• indirektes Licht