-
Notifications
You must be signed in to change notification settings - Fork 1
/
preface.tex
25 lines (14 loc) · 5.4 KB
/
preface.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
%!TEX root = foo-thesis.tex
\chapter*{Abstract}
\addcontentsline{toc}{chapter}{Abstract}
Global illumination is one of the most thoroughly investigated fields in computer graphics. Its applications are numerous, from offline rendering to real-time applications, for photorealistic and non-photorealistic rendering, and on static or dynamic geometry, each coming with their own set of requirements in terms of flexibility, performance, and quality. A multitude of widely differing approaches have been invented to simulate global illumination for each of the different sets of requirements. One of these approaches are many-light methods. They place lots of \textit{virtual point lights} in illuminated areas of a scene. These virtual point lights are themselves used to light the scene, thereby simulating indirect lighting. The concept is highly scalable and is used in both offline and real-time applications.
One of the most challenging application areas of global illumination are real-time applications with dynamic geometry. While moving geometry prevents most kinds of precomputation, having only a few milliseconds of computation time forces researchers and application developers to make compromises on the quality or constrain their system to a very specific use case. As a result, all available global illumination algorithms have significant drawbacks, for example not achieving real-time performance, not fully supporting dynamic geometry, supporting only certain kinds of scenes, producing low-quality output, or not being scalable to low-end devices and high quality levels.
In this thesis, we explore the field of real-time global illumination systems by implementing and optimizing a many-light algorithm. The focus lies on improving imperfect shadow maps, which are approximate shadow maps that can efficiently be rendered for hundreds or thousands of lights. Additionally, we apply clustered deferred shading, an optimization that performs light culling, to many-light methods, and present an efficient implementation of interleaved shading, another optimization technique. Although coming with its own set of drawbacks, the presented rendering system runs in real-time on current commodity hardware and requires no precomputation. The results show that the achieved performance is more than sufficient to be used in real-time applications. However, the output quality leaves much to be desired, primarily because of several flaws of imperfect shadow maps, and requires a more fundamental change of approach to visibility testing.
\chapter*{Zusammenfassung}
\addcontentsline{toc}{chapter}{Zusammenfassung}
\begin{otherlanguage}{ngerman}
Globale Beleuchtung ist eines der am meisten erforschten Gebiete der Computergrafik. Es gibt eine Vielzahl von Anwendungsmöglichkeiten, vom Offline-Rendering zu Echtzeitanwendungen, für fotorealistische und nicht-fotorealistische Bildsynthese, und für statische und dynamische Geometrie. Jede der Anwendungen hat dabei verschiedene Anforderungen in Bezug auf Flexibilität, Performance, und Qualität. Die Forschung hat eine große Menge von sich teilweise stark unterscheidenden Ansätzen für die Simulation globaler Beleuchtung unter Berücksichtigung der verschiedenen Anforderungen hervorgebracht. Einer dieser Ansätze sind die Many-Light-Methoden. Bei diesem Ansatz wird eine große Menge von virtuellen Punktlichtquellen in beleuchteten Bereichen der Szene erstellt. Diese Lichtquellen beleuchten ihrerseits die Szene und simulieren somit reflektiertes Licht. Das Konzept ist in hohem Maße skalierbar und wird sowohl im Offline-Rendering als auch in Echtzeitanwendungen verwendet.
Eine der herausfordernsten Anwendungsbereiche für globale Beleuchtung sind Echtzeitanwendungen mit dynamischer Geometrie. Letzteres verhindert den Einsatz von aufwendigen Vorberechnungen, und da nur wenige Millisekunden zur Berechnung zur Verfügung stehen, müssen Forscher und Anwendungsentwickler Kompromisse bei der Qualität eingehen oder ihr Konzept auf einen spezifischen Anwendungsfall beschränken. Dadurch haben alle bestehenden Algorithmen zur Berechnung globaler Beleuchtung deutliche Nachteile, z.\,B. funktionieren sie nicht in Echtzeit, unterstützen keine dynamische Geometrie oder nur bestimmte Arten von Szenen, haben im Ergebnis eine geringe Qualität oder skalieren nicht von Low-End-Geräten bis zu hohen Qualitätsanforderungen.
In dieser Arbeit untersuchen wir das Feld der globalen Beleuchtung in Echtzeit, indem wir einen Many-Light-Algorithmus implementieren und optimieren. Der Fokus liegt dabei auf der Verbesserung von \textit{Imperfect Shadow Maps}, d.\,h. kleinen, approximierten Shadow Maps, die effizient zu hunderten generiert werden können. Zusätzlich wenden wir \textit{Clustered Deferred Shading} an, eine Optimierung zum Culling von Lichtquellen, und präsentieren eine effiziente Implementierung von \textit{Interleaved Shading}, einer weiteren Optimierungstechnik. Auch wenn das vorgestellte Renderingsystem seine eigenen Nachteile hat, läuft es auf handelsüblicher Hardware in Echtzeit und benötigt keine Vorberechnungen. Die Ergebnisse zeigen, dass die erreichte Performance mehr als genug für Echtzeitanwendungen ist; allerdings genügt die Ausgabe nicht höheren Qualitätsanforderungen. Verantwortlich sind vor Allem mehrere Schwächen der \textit{Imperfect Shadow Maps}, die sich vermutlich nur durch einen fundamental anderen Ansatz zum Testen der Sichtbarkeit lösen lassen.
\end{otherlanguage}
\cleardoublepage