Filtern
Dokumenttyp
- Bachelorarbeit (2)
- Diplomarbeit (1)
- Masterarbeit (1)
Sprache
- Deutsch (4) (entfernen)
Schlagworte
- Raytracing (4) (entfernen)
Institut
- Institut für Computervisualistik (4) (entfernen)
Die Computergrafik befasst sich mit der Erzeugung von virtuellen Bildern. Im Bereich der 3D-Computergrafik werden die dargestellten Objekte im dreidimensionalen Raum beschrieben. Dazu bedient man sich diverser Generierungsverfahren. Einer dieser so genannten Renderer ist das Raytracing-Verfahren. Es erfreut sich in der Computergrafik wegen der erreichten Bildqualität bei ueberschaubarer Komplexität großer Beliebtheit. Dabei wird versucht, immer realistischere Ergebnisse zu erreichen. In der Vergangenheit wurde Raytracing deswegen beispielsweise um globale Beleuchtungsmodelle oder um reflektierende beziehungsweise um transparente Objekte erweitert. Dabei wurde aber ein wichtiger Punkt häufig vernachlässigt, welcher ebenfalls den Grad an Realismus deutlich erhöhen kann: die Kamera. Meistens geht man auch heutzutage von einem vereinfachten Lochkameramodell aus. Aus diesem Grund genügen solche Modelle nicht den Ansprüchen physikalisch-korrekter Renderingverfahren. Eine wirklich umfassend korrekte Abbildung von Szenen darf also nicht vernachlässigen, dass ein generiertes Bild durch ein Linsensystem noch einmal entscheidend beeinflusst wird. In dieser Arbeit wird deswegen ein physikalisch korrektes Kameramodell vorgestellt, welches die geometrischen Eigenschaften des Linsensystems berücksichtigt und die Belichtung auf der Bildebene korrekt berechnet.
Diese Arbeit präsentiert einen Ansatz zur Optimierung der Berechnung von Halbschatten flächiger Lichtquellen. Die Lichtquelle wird durch Sampling uniform abgetastet. Als Datenstruktur wird ein N-tree verwendet, durch den die Strahlen als Paket traversiert werden. Der N-tree speichert in seinen Knoten einen Linespace, der Informationen über Geometrie innerhalb eines Schaftes bietet. Diese Sichtbarkeitsinformation wird als Kriterium für eine Terminierung eines Strahles genutzt. Zusätzlich wird die Grafikkarte (kurz GPU – engl. „graphics processing unit“) zur Beschleunigung durch Parallelisierung benutzt. Die Szene wird zunächst mit OpenGL gerendert und anschließend der Schattenwert für jedes Pixel auf der GPU berechnet. Im Anschluss werden die CPU- und GPU-Implementationen verglichen. Dabei zeigt die GPU-Implementation eine Beschleunigung von 86% gegenüber der CPU-Implementation und bietet eine gute Skalierung mit zunehmender Dreieckszahl. Die Verwendung des Linespace beschleunigt das Verfahren gegenüber der Durchführung von Schnitttests und zeigt für eine große Anzahl an Strahlen keine visuellen Nachteile.
Eine der grundlegenden Entscheidungen bei der Entwicklung eines Systems ist die Darstellung der Daten. Üblicherweise werden in der Computergrafik Objekte durch Dreiecke dargestellt. Allerdings existieren viele weitere Varianten, welche andere Stärken und Schwächen besitzen. In dieser Arbeit soll die Repräsentation von Objekten durch Distanzfelder untersucht werden. Distanzfelder sind Funktionen, welche für jeden Raumpunkt die Distanz zum nächsten Oberflächenpunkt angeben. Aus dieser einfachen Beschreibung lassen sich viele interessante Eigenschaften ableiten, welche zur Darstellung einer Vielzahl von Formen, Operationen und Effekten genutzt werden können. Es wird ein Überblick über die Hintergründe und Methoden des Distanzfeld-Renderings gegeben. Weiterhin werden verschiedene neue oder erweiterte Ansätze vorgestellt, etwa zur Darstellung impliziter Oberflächen, approximativer indirekter Beleuchtung oder einer GPU Implementation.
Diese Arbeit zeigt die Verwendung einer lokalen Linespace Datenstruktur, welche auf Basis eines bestehenden GPU-basierten Raytracers mit globa- ler Linespace Datenstruktur konzipiert und implementiert wird. Für jedes Szenenobjekt wird ein N-Tree generiert, dessen Knoten jeweils einen Line- space besitzen. Dieser speichert in seinen SchäftenInformationen über exis- tierende Geometrie. Ein Schaft stellt ein Volumen zwischen zwei Flächen auf der Knotenaußenseite dar. Dies ermöglicht bei der Strahlverfolgung ein schnelleres Überspringen leerer Räume. Identische Objekte können auf bereits berechnete Linespaces zurückgreifen, wodurch der Speicherbedarf um bis zu 94,13% und die Initialisierungszeit der Datenstruktur um bis zu 97,15% vermindert werden kann. Aufgrund der lokalen Zugriffsmöglich- keiten könnendynamische Szenen visualisiertwerden. Dabei ist ebenso ein Anstieg der Qualität zu beobachten.