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.
Diese Arbeit befasst sich mit einer 3D-Interaktion von primitiven Objekten, welche von Gesten gesteuert wird. Dabei werden Funktionen, welche auf eine absolute Positionierung angewiesen sind, mit Hilfe eines Touchscreens implementiert. Als zweites Eingabegerät dient die Leap-Motion, welche Gesten anhand von zwei CCD-Kameras und drei Infrarot-LEDs aufnimmt. Die Gesten bestehen dabei aus der Translation, Rotation und Skalierung von Objekten, sowie aus einer Steuerung, die die Bewegung im Raum ermöglicht. Zur visuellen Umsetzung wurde die Arbeit in Blender mit der Blender Game Engine unter Python geschrieben. Nur das Auswählen der Objekte wurde mit Hilfe des Touchscreens realisiert. Diese Steuerung wurde anschließend mit einer reinen Maussteuerung evaluiert. Diese beiden Eingabemöglichkeiten unterscheiden sich darin, dass die Gestensteuerung nicht etabliert ist. Sie besitzt allerdings den Vorteil, dass sie im dreidimensionalen Raum ausgeführt werden kann. Die Maus hingegen ist geläufig, beschreibt aber nur einen zweidimensionalen Raum als Eingabe. Es stellt sich also die Frage, ob bei der dreidimensionalen Interaktion von Objekten eine Maussteuerung oder eine Gestensteuerung bevorzugt wird. Das Ergebnis beläuft sich daran, dass die Maus favorisiert wird. Jedoch liegt die Gestensteuerung in manchen Bereichen nah an dem Ergebnis der Maus.
Das Thema dieser Arbeit ist die Entwicklung einer hardwarebeschleunigten Einzelbildkompression zur Videoübertragung. Verfahren zur Einzelbildkompressionrn existieren bereits seit längerer Zeit. Jedoch genügen die gängigen Verfahren nicht den Anforderungen der Echtzeit und Performanz, um während einer Videoübertragung ohne spürbare Latenz zum Einsatz zu kommen. In dieser Arbeit soll einer der geläufigsten Algorithmen zur Bildkompression auf Parallelisierbarkeit, unter zu Hilfenahme der Grafikkarte, untersucht werden, um Echtzeitfähigkeit während der Kompression und Dekompression von computergenerierten Bildern zu erreichen. Die Ergebnisse werden evaluiert und in den Rahmen aktueller Verfahren parallelisierter Kompressionstechniken eingeordnet.
Bruchsimulation
(2014)
Aufgrund ihrer Komplexität wird die Simulation von Brüchen in echtzeitfähigen Anwendungen der Computergraphik häufig gemieden. Durch Methoden aus den Ingenieurswissenschaften können Simulationen geschaffen werden, die Spiele und andere Anwendungen enorm bereichern. Stetig steigende Rechnerleistungen ermöglichen entsprechende Simulationen in Echtzeit und machen diesen Aspekt zunehmend interessanter.
Das Ziel dieser Arbeit ist die Modellierung von Brüchen starrer Körper durch eine Simulation. Der Fokus richtet sich dabei auf die physikalische Plausibilität und Performanz der Anwendung. Durch diese Ausarbeitung soll beantwortet werden, inwiefern eine Simulation von Brüchen mit Mitteln der Computergraphik umgesetzt werden kann.
Es wurden drei bestehende Ansätze und eine eigene Entwicklung implementiert und analysiert. Dieser Arbeit liegen die Verfahren "Real-Time Simulation of Deformation and Fracture of Stiff Materials" von Müller et al., "Real-Time Simulation of Brittle Fracture using Modal Analysis" von Glondu et al. und "Fast and Controllable Simulation of the Shattering of Brittle Objects" von Smith et al. zugrunde. Die vorgestellten Methoden führen voneinander abweichende Bruchbildungen durch. Das eigenständig entwickelte Verfahren baut auf deren Vorzügen auf und erweitert sie mit der Idee der sekundären Risse. Die Implementierung der vier Ansätze erfolgte in der Physik-Engine Bullet.
Die Ergebnisse der Arbeit zeigen, dass physikalisch basierte Brüche in Echtzeit realisierbar sind. Die Untersuchung der physikalischen Methoden auf Performanz zeigte, dass diese vor allem mit der Struktur der Objekte zusammenhängen. Die präsentierten Methoden lieferten für eine Auswahl an Objekten physikalisch plausible Ergebnisse in Echtzeit. Durch die Ausarbeitung wird deutlich, dass die weitere Erforschung der Thematik neue Möglichkeiten aufdecken kann. Die Verbesserung des Realismus in echtzeitfähigen, virtuellen Welten kann mit dem Einsatz von physikalisch plausiblen Methoden erreicht werden.
Ein Kinect-Sensor verfügt über die Fähigkeit, gleichzeitig Farb- und Tiefenbilder aufzunehmen. In dieser Bachelorarbeit wird versucht, das Tiefenbild zu nutzen, um Beleuchtungsinformationen und Materialeigenschaften im Farbbild zu manipulieren. Die vorgestellten Verfahren zur Beleuchtungs- und Materialmanipulation benötigen eine Lichtsimulation der Lichtverhältnisse zum Zeitpunkt der Aufnahme und übertragen dann Informationen aus einer neuen Lichtsimulation direkt zurück in das Farbbild. Da die Simulationen auf einem dreidimensionalen Modell durchgeführt werden, wird nach einem Weg gesucht, ein solches aus einem einzigen Tiefenbild zu erzeugen. Dabei wird auf Probleme der Tiefendatenerfassung des Kinect-Sensors eingegangen. Es wird ein Editor entwickelt, mit dem Beleuchtungsund Materialmanipulationen möglich gemacht werden sollen. Zum Erzeugen einer Lichtsimulation werden einfache, echtzeitfähige Renderingverfahren und Beleuchtungsmodelle vorgestellt. Mit ihnen werden neue Beleuchtungssituationen, Schatten und Spiegelungen in das Farbbild eingefügt. Einfache Umgebungen mit definierten Lichtverhältnissen werden in Experimenten manipuliert, um Grenzen und Möglichkeiten des Sensors und der verwendeten Verfahren aufzuzeigen.