Filtern
Schlagworte
- Graphik (2) (entfernen)
Diese Arbeit vermittelt einen grundlegenden Überblick über die Funktionsweise und Implementierung von aktuellen Voxelisierungsstrategien auf der GPU. Neben etablierten Voxelisierungsverfahren mithilfe der Rasterisierungspipeline werden neue Möglichkeiten mithilfe von GPGPU-Programmierung untersucht. Auf der Basis der Programmiersprache C++ und der Grafikbibliothek OpenGL wird die Implementierung mehrerer Verfahren erläutert.rnDie Verfahren werden hinsichtlich der Performanz und der Qualität der Voxelisierung verglichen und im Bezug auf mögliche Anwendungsfälle kritisch bewertet. Weiterhin werden zwei Beispielanwendungen beschrieben, in denen die Verwendung einer voxelisierten Szene eine Erweiterung von bestehenden Echtzeitgrafikverfahren ermöglicht. Zu diesem Zweck werden die Konzepte und die Implementierungen von Transmittance Shadow Mapping und von Reflective Shadow Mapping, das um voxelbasierte Umgebungsverdeckung erweitert wird, erläutert. Abschließend wird die anhaltende Relevanz von Voxelisierung in einem Ausblick auf aktuelle Forschungen und weitere Anwendungen und Erweiterungen der vorgestellten Verfahren aufgezeigt.
Die Entwicklung der echtzeitfähigen Computergrafik ermöglicht mittlerweile immer realistischere Bilder und die Hardware kann dafür optimal ausgenutzt werden, wodurch immer glaubwürdigere Lichtverhältnisse simuliert werden können. Eine große Anzahl von Algorithmen, effizient implementiert auf der Grafikkarte (GPU, auch Grafikprozessor)), sind fähig komplexe Lichtsituationen zu simulieren. Effekternwie Schatten, Lichtbrechung und Lichtreflexion können mittlerweile glaubwürdig erzeugt werden. Besonders durch Reflexionen wird der Realismus der Darstellung erhöht, da sie glänzende Materialien, wie z.B. gebürstete Metalle, nasse Oberflächen, insbesondere Pfützen oder polierte Böden, natürlich erscheinen lassen. Dabei geben sie einen Eindruck der Materialeigenschaften, wie Rauheit oder Reflexionsgrad.rnAußerdem können Reflexionen vom Blickpunkt abhängen: Eine verregnete Straße zum Beispiel würde Licht, abhängig von der Entfernung des Betrachters reflektieren und verwaschene Lichtreflexe erzeugen. Je weiter der Betrachter von der Lichtquelle entfernt ist, desto gestreckter erscheinen diese. Ziel dieser Bachelorarbeit ist, eine Übersicht über existierende Render-Techniken für Reflexionen zu geben, um den aktuellen Stand der Technik abzubilden. Reflexion entsteht durch den Einfall von Licht auf Oberflächen, die dieses in eine andere Richtung zurückwerfen. Um dieses Phänomen zu verstehen, wird eine Auffassung von Licht benötigt. Kapitel 2.1 beschreibt daher ein physikalisches Modell von Licht, gefolgt von Kapitel 2.2, das anhand von Beispielen ästhetisch wirkender Reflexionseffekte aus der realenrnWelt und den Medien die Motivation dieser Arbeit darlegt. In Kapitel 3 soll die generelle Vorgehensweise beim Rendern von Reflexionen deutlich gemacht werden. Danach wird in Kapitel 4 eine grobe Übersicht über existierende Ansätze gegeben. In Abschnitt 5 werden dann drei wesentliche Algorithmen vorgestellt, die zur Zeit oft in Spiel- und Grafikengines verwendet werden: Screen Space Reflections (SSR), Parallax-corrected cube mapping (PCCM) und Billboard Reflections (BBR). Diese drei Ansätze wurden zusammen in einem Framework implementiert. Dieses wird in Kapitel 5 vorgestellt und erklärt, gefolgt von detaillierten Beschreibungen der drei Techniken. Nachdem ihre Funktionsweise erklärt wurde, werden die Ansätze analysiert und auf ihre visuelle Qualität sowie ihre Echtzeitfähigkeit getestet. Abschließend werden die einzelnen Verfahren miteinander verglichen, um ihre Vor- und Nachteile zu untersuchen. Außerdem werden die gewonnenen Erfahrungen beschrieben und Verbesserungsansätze vorgeschlagen. Danach wird ein kurzer Ausblick zur voraussichtlichen Entwicklung von Render-Techniken spekularer Effekte gegeben.