Filtern
Dokumenttyp
- Bachelorarbeit (10)
- Masterarbeit (3)
- Diplomarbeit (1)
Schlagworte
- Graphik (2)
- OpenGL (2)
- VOXEL (2)
- Augmented Reality (1)
- Beleuchtung (1)
- Blickpunktabhängig (1)
- Bounding Volume Hierarchie (1)
- Breaking (1)
- Bruchsimulation (1)
- Compute-Shader (1)
Institut
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 Animation von Modellen ist zu einem wichtigen Teil in den unterschiedlichsten und alltäglichen Bereichen unseres Lebens geworden. Es ist eine anspruchsvolle Aufgabe der Computergrafik eine natürliche Deformation von organischen Modellen zu generieren. Skinning ist eine übliche Methode um Modelle zu animieren ohne die Animation jedes Vertices. Die Oberfläche des Modells wird automatisch durch die Manipulation einzelner Knochen eines Skeletts deformiert.
Diese Bachelorarbeit befasst sich mit dem meist genutzen Algorithmus,dem Linear Blend Skinning Algorithmus, der bezüglich des visuellen Eindrucks und der Performanz optimiert werden soll. Zusätzlich werden Instancing Methoden vorgestellt und in der Anwendung mit Skinning Methoden kombiniert um deren Vor- und Nachteile aufzuzeigen.
Augmented Reality besitzt viele denkbare Anwendungsbereiche, in denen Alltag oder Arbeitsprozesse vereinfacht werden können. Dadurch, dass viele Hersteller sehr unterschiedliche Augmented Reality Brillen anbieten, wird die Auswahl des richtigen Systems und eine systemübergreifende Entwicklung jedoch erschwert. Im Rahmen dieser Bachelorarbeit wird daher eine Anwendung entwickelt, mit der Augmented Reality Brillen auf einem Virtual Reality System simuliert werden können. Damit soll eine plattformübergreifende Entwicklung sowie die Auswahl des richtigen Systems vereinfacht werden.
Da die Simulation für mobile Endgeräte konzipiert werden soll, sollen möglichst realistische Umgebungen als Panorama vorgerendert werden können. Um diese auf Virtual Reality Systemen als stereoskopische Bilder darstellen zu können, werden verschiedene Verfahren zur Konvertierung in solche vorgestellt. Es wird ein Editor entwickelt, mit dem verschiedene Szenarien erstellt, Augmented Reality Systeme konfiguriert und schließlich auf einem Virtual Reality System angezeigt werden können. Abschließend wird untersucht, wie gut die Simulation gelungen ist und welche Verbesserungsmöglichkeiten es gibt.
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.
Der natürliche Prozess der Verwitterung ist ein komplexer Vorgang, der von unterschiedlichsten Parametern beeinflusstwird. Hauptbestandteil dieses Prozesses ist das Zusammenziehen des Fruchtvolumens infolge von Wasserverlust durch Transpiration sowie die Veränderung der Fruchtfarbe und Oberfläche. Es wurden bereits Verfahren entwickelt, die diese Eigenschaften mit Hilfe von Parametrisierung sowie physikalischer Ansätze simulieren. Die in dieser Arbeit erstellte Anwendung simuliert das Fruchtfleisch durch ein Tetraedernetz und die Veränderung der Haut mit Hilfe von dynamischer Texturanpassung. Der entwickelte Algorithmus arbeitet in linearer Laufzeit und seine Ergebnisse werden anhand selbst erstellter Fruchtmodelle präsentiert.
Die vorliegende Arbeit befasst sich mit der Anwendung und Optimierung globaler Beleuchtung in dreidimensionalen Szenen. Dabei wird nicht nur die direkte Beleuchtung in Abhängigkeit einer oder mehrerer Lichtquellen, sondern auch indirekte Beleuchtung durch umliegende Objekte berücksichtigt. Schwerpunkt dieser Arbeit ist es, die Ergebnisse eines globalen Beleuchtungsverfahrens durch die Implementation unter OpenGL 4.4 zu verbessern. Dies geschieht mithilfe einer Voxelisierung der Szene. Durch eine Traversierung der entstehenden Voxel-Struktur werden zusätzliche Informationen der Szene entnommen, was zu einer realistisch wirkenden globalen Beleuchtung beiträgt.
Thematik dieser Arbeit ist das dreidimensionale Image-Warping für diffuse und reflektierende Oberflächen. Das Warpingverfahren für den reflektierenden Fall gibt es erst seit 2014. Bei diesem neuen Algorithmus treten Artefakte auf, sobald ein Bild für einen alternativen Blickwinkel auf eine sehr unebene Fläche berechnet werden soll.
In dieser Arbeit wird der Weg von einem Raytracer, der die Eingabetexturen erzeugt, über das Warpingverfahren für beide Arten der Oberflächen, bis zur Optimierung des Reflective-Warping-Verfahrens erarbeitet. Schließlich werden die Ergebnisse der Optimierung bewertet und in den aktuellen sowie zukünftigen Stand der Technik eingeordnet.
Das Ziel dieser Masterarbeit war es, ein Konzept für einen mobilen Stadtführer mit gamebasierten Inhalten zu entwerfen und prototypisch umzusetzen.
Die Anwendung soll ein flexibles und unabhängiges Entdecken der Stadt Koblenz ermöglichen. Basierend auf den geographischen Daten wurden in der Anwendung stadthistorische Informationen sowie interessante Geschichten zu verschiedenen Orten bereitgestellt. Diese Informationen wurden mit spielerischen Elementen kombiniert, um ein motivierendes Konzept zu schaffen.
Dafür wurden zunächst verwandte Ansätze untersucht und darauf aufbauend unter Berücksichtigung eigener Ideen ein neues Konzept entwickelt. Das Konzept wurde prototypisch als Android-Anwendung umgesetzt. Das Ergebnis wurde in einer abschließenden Evaluation mit 15 Probanden untersucht. Dabei wurden mit Hilfe eines Fragebogens unter anderem die Bedienbarkeit, die Motivation durch die Spielelemente und der Mehrwert der Anwendung betrachtet.
Ray Tracing als Bildsyntheseverfahren ist relevant für viele Anwendungsbereiche, da es Aspekte des Lichttransports physikalisch korrekt simulieren kann. Aufgrund des hohen Berechnungsaufwands sind der Einsatz von Datenstrukturen zur Beschleunigung und die parallele Verarbeitung notwendig. GPUs sind inzwischen hoch parallele, programmierbare Prozessoren mit zahlreichen Kernen und eignen sich aufgrund ihrer hohen Leistungsfähigkeit dazu, aufwändige, parallelisierbare Probleme zu lösen. In dieser Arbeit geht es um GPU Ray Tracing, beschleunigt durch Bounding Volume Hierarchien (BVH). Auf Basis relevanter Veröffentlichungen zu Aufbau und Traversierung von BVHs und der Abbildung des Ray Tracing Prozesses auf die GPU Architektur wird ein GPU Ray Tracer konzeptioniert und entwickelt. Während der BVH Aufbau vorab auf dem Host stattfindet, wird der gesamte Ray Tracing Prozess durch mehrere Kernel komplett auf der GPU ausgeführt. Die Implementierung der Kernel erfolgt in Form von OpenGL Compute Shader Programmen, und die Aufteilung des Ray Tracers auf mehrere Kernel ist durch die GPU Achitektur und das SIMT Ausführungsmodell motiviert. Für die Speicherorganisation der binären BVHs werden zwei Varianten betrachtet, klassisch und als MBVH, wobei sich die MBVH Organisation als effizienter erweist. Zudem werden verschiedene Varianten für die Traversierung ohne Stack und für die Stack-basierte Traversierung umgesetzt und bewertet. Der in mehrere Kernel strukturierte GPU Ray Tracer wird zudem mit einer Einzelkernel Version verglichen. Die besten Ergebnisse erreicht die Traversierung ohne Stack mit einem while-while Ablauf und MBVH im Rahmen des aufgeteilten GPU Ray Tracers.
Zusätzlich zum Rendern wird die Rechenleistung moderner Grafikkarten immer häufiger auch für allgemeine Berechnungen (GPGPU) genutzt. Für die Umsetzung stehen verschiedene Möglichkeiten zur Verfügung, die von der Verwendung der Renderingpipeline bis zu eigenständigen Schnittstellen reichen. In dieser Arbeit werden mit Render-To-Texture, Transform Feedback, Compute Shader und OpenCL vier verschiedene GPGPU-Methoden untersucht. Anhand von Partikelsystemen werden sie hinsichtlich der benötigten Berechnungszeit, der GPU-Auslastung, Lines of Code und Portierbarkeit miteinander verglichen. Dazu wurden sowohl das N-Körper Problem, Smoothed Particle Hydrodynamics und ein Partikelschwarm als Partikelsysteme umgesetzt. Es konnte gezeigt werden, dass insbesondere OpenCL und Compute Shader sehr gute Ergebnisse liefern.