54.73 Computergraphik
Filtern
Dokumenttyp
- Bachelorarbeit (11)
- Masterarbeit (6)
- Dissertation (2)
Schlagworte
- Computervisualistik (5)
- Computergrafik (4)
- Line Space (4)
- Raytracing (3)
- Augmented Reality (2)
- Datenstruktur (2)
- Global Illumination (2)
- Linespace (2)
- Path Tracing (2)
- Realistische Computergrafik (2)
Institut
In keinem Bereich der Informatik hat sich die Hardware so rasant entwickelt,
wie im Bereich der Computergraphik. Dabei bietet die GPU, neben
der reinen Darstellung von Dreiecken, inzwischen auch eine Reihe weiterer
Pipeline-Schritte, die auch die Darstellung von anderen graphischen
Objekten, wie zum Beispiel den Freiformflächen, ermöglicht.
Diese Arbeit beschäftigt sich mit dem Rendering von Freiformflächen,
insbesondere dem der Bézierflächen. Dafür wurde für das Rendering Framework
der Universität Koblenz (CVK) eine entsprechende Implementierung
zur Verwaltung und Darstellung von Bézierflächen erstellt. Dazu wurde
zunächst die Triangulation und schließlich die Tessellierung der Bézierflächen
mit Normalen und Texturkoordinaten, sowie die Behandlung von
Trimmkurven erstellt.
In dieser Arbeit werden Methoden und Maße getestet, nach denen beim Pathtracing eine Auswahl zwischen Line Space und Bounding Volume Hierarchie getroffen werden kann, die die Vorteile der beiden Datenstrukturen ausnutzen. Die Strukturen sind innerhalb der Bounding Box jedes Objekts (Objektlokal) definiert und jeder Line Space enthält in den Shafts jeweils eine Kandidaten-ID. Als Implementations- basis dient ein eigenes C++ und OpenGL Framework, in dem das Pathtracing und die Line Space Generierung über Compute Shader stattfindet. Die Maße schließen die Wahrscheinlichkeitsverteilung, die Effektabhängigkeit, sowie einen Distanz- grenzwert ein und werden gegen verschiedene Szenen getestet. Die Ergebnisse zeigen in den meisten Situationen einen deutlichen Geschwindigkeitszuwachs bei teils nur geringen visuellen Unterschieden, wobei das Wahrscheinlichkeitsmaß die qualitativ hochwertigsten Bilder für den gegebenen Leistungszuwachs erbringt. Die grundlegenden Probleme des Line Space im Vergleich mit der BVH, nämlich der hohe Speicherverbrauch und die lange Generierungszeit, bleiben aber trotz der objektlokalen Struktur, der minimalen Datenmenge pro Shaft und der Compute Shader Implementierung, erhalten.
In dieser Arbeit werden die Möglichkeiten der Echtzeitvisualisierung von
OpenVDB-Dateien untersucht. Die Grundlagen von OpenVDB, dessen
Möglichkeiten, und NanoVDB, der GPU-Schnittstelle, werden erforscht.
Es wird ein System entwickelt, welches PNanoVDB, die Grafik-APIPortierung
von OpenVDB, verwendet. Außerdem werden Techniken
zur Verbesserung und Beschleunigung eines Einzelstrahlansatzes zur
Strahlenverfolgung getestet und angepasst. Um eine Echtzeitfähigkeit
zu realisieren, werden zwei Einzelstreuungsansätze implementiert, von
denen einer ausgewählt, weiter untersucht und optimiert wird.
Dies ermöglicht potenziellen Nutzern eine direkte Rückmeldung über
ihre Anpassungen zu erhalten, sowie die Möglichkeit, alle Parameter zu
ändern, um einen freien Gestaltungsprozess zu gewährleisten.
Neben dem visuellen Rendering werden auch entsprechende Benchmarks
gesammelt, um verschiedene Verbesserungsansätze zu vergleichen und
deren Relevanz zu beweisen. Um eine optimale Nutzung zu erreichen,
wird auf die Rendering-Zeiten und den Speicherverbrauch auf der GPU
geachtet. Ein besonderes Augenmerk wird auf die Integrierbarkeit und
Erweiterbarkeit des Programms gelegt, um eine einfache Integration in
einen bestehenden Echtzeit-Renderer wie U-Render zu ermöglichen.
Das fotorealistische Rendering von Fell ist ein oft gesehenes Problem in der Computergrafik und wird besonders bei Animationsfilmen häufig gebraucht. In dieser Arbeit werden zwei Beleuchtungsmodelle, ursprünglich zum Rendern von menschlichen Haaren, vorgestellt. Dies ist zum einen das Modell von Marschner et al. aus dem Jahr 2003, welches als Grundlage für viele neuere Modelle gilt, sowie das Modell von d’Eon et al. aus dem Jahr 2011. Beide Modelle werden innerhalb eines Pathtracers, welcher globale Beleuchtung simuliert, implementiert. Es werden die Besonderheiten von Haar-Fasern aus Fell im Gegensatz zu menschlichen Haar-Fasern aufgezeigt und folglich erläutert, warum die präsentierten Modelle auch für viele Fellarten genutzt werden können. Dabei liegt der Fokus auf einer realistischen visuellen Darstellung. Zusätzlich wird die Performance beider Modelle verglichen und Verbesserungsvorschläge durch die Nutzung von zylinder förmigen Schnittpunktobjekten für den Pathtracer gegeben und anhand der Implementation evaluiert.
In dieser Bachelorarbeit geht es um den Einsatz des Wii Balance Boards
in -Realität-Anwendungen. Als Anwendungsbeispiel wird ein Snowboard
Spiel implementiert, in dem der virtuelle Avatar mit den Drucksensoren
des Wii Balance Board gesteuert werden kann. Der Anwender soll mit seiner
Körperbalancierung, spielerisch und intuitiv in der virtuellen Umgebung
manövrieren. Es werden die Immersion und der Einfluss auf Motion-
Sickness beziehungsweise Cybersickness erforscht. Außerdem wird dasWii
Balance Board mit dem Xbox Controller verglichen was die Steuerung betrifft.
Ziel der Arbeit ist es zu evaluieren, ob das Wii Balance Board in
der Lage ist, freies Bewegen in der virtuellen Umgebung zu ermöglichen.
Außerdem soll untersucht werden, welcher der beiden Geräte vorteilhafter
ist. Die Umfrageergebnisse laufen darauf hinaus, dass das Wii Balance
Board einen wesentlich positiveren Einfluss auf die Immersion hat, als der
Controller, trotz der besseren Spielergebnisse. Außerdem hat die Untersuchung
ergeben, dass die Verwendung des Wii Balance Board viel häufiger
für Motion-Sickness und Cybersickness Fälle verantwortlich ist.
Die Raytracing-Beschleunigung durch dedizierte Datenstrukturen ist schon lange ein wichtiges Thema der Computergrafik. Im Allgemeinen werden dafür zwei unterschiedliche Ansätze vorgeschlagen: räumliche und richtungsbezogene Beschleunigungsstrukturen. Die vorliegende Arbeit stellt einen innovativen kombinierten Ansatz dieser beiden Bereiche vor, welcher weitere Beschleunigung der Strahlenverfolgung ermöglicht. Dazu werden moderne räumliche Datenstrukturen als Basisstrukturen verwendet und um vorberechnete gerichtete Sichtbarkeitsinformationen auf Basis von Schächten innerhalb einer originellen Struktur, dem Line Space, ergänzt.
Im Laufe der Arbeit werden neuartige Ansätze für die vorberechneten Sichtbarkeitsinformationen vorgeschlagen: ein binärer Wert, der angibt, ob ein Schacht leer oder gefüllt ist, sowie ein einzelner Vertreter, der als repräsentativer Kandidat die tatsächliche Oberfläche approximiert. Es wird gezeigt, wie der binäre Wert nachweislich in einer einfachen, aber effektiven Leerraumüberspringungs-Technik (Empty Space Skipping) genutzt wird, welche unabhängig von der tatsächlich verwendeten räumlichen Basisdatenstruktur einen Leistungsgewinn beim Raytracing von bis zu 40% ermöglicht. Darüber hinaus wird gezeigt, dass diese binären Sichtbarkeitsinformationen eine schnelle Technik zur Berechnung von weichen Schatten und Umgebungsverdeckung auf der Grundlage von Blockerapproximationen ergeben. Obwohl die Ergebnisse einen gewissen Ungenauigkeitsfehler enthalten, welcher auch dargestellt und diskutiert wird, zeigt sich, dass eine weitere Traversierungsbeschleunigung von bis zu 300% gegenüber der Basisstruktur erreicht wird. Als Erweiterung zu diesem Ansatz wird die repräsentative Kandidatenvorberechnung demonstriert, welche verwendet wird, um die indirekte Lichtberechnung durch die Integration von kaum wahrnehmbaren Bildfehlern signifikant zu beschleunigen. Schließlich werden Techniken vorgeschlagen und bewertet, die auf zweistufigen Strukturen und einer Nutzungsheuristik basieren. Diese reduzieren den Speicherverbrauch und die Approximationsfehler bei Aufrechterhaltung des Geschwindigkeitsgewinns und ermöglichen zusätzlich weitere Möglichkeiten mit Objektinstanziierungen und starren Transformationen.
Alle Beschleunigungs- und Speicherwerte sowie die Näherungsfehler werden gemessen, dargestellt und diskutiert. Insgesamt zeigt sich, dass durch den Line Space eine deutliche Erhöhung der Raytracing Leistung auf Kosten eines höheren Speicherverbrauchs und möglicher Annäherungsfehler erreicht wird. Die vorgestellten Ergebnisse zeigen damit die Leistungsfähigkeit des kombinierten Ansatzes und eröffnen weitere Möglichkeiten für zukünftige Arbeiten.
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.
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.
Simulationen in der Computergraphik haben das Ziel, die Realität so genau wie möglich in einer Szene einzufangen. Dafür werden intern und extern wirkende Kräfte berechnet, aus denen Beschleunigungen berechnet werden. Mit diesen werden letztendlich die Positionen von Geometrien oder Partikeln verändert.
Position Based Dynaimcs arbeitet direkt auf den Positionen. Durch Constraints wird eine Menge von Regeln aufgestellt, die zu jedem Zeitpunkt in der Simulation gelten sollen. Ist dies nicht der Fall, so werden die Positionen so verändert, dass sie den Constraints entsprechen. In dieser Arbeit wird ein PBD-Framework implementiert, in dem Solide und Fluide simuliert werden. Die Constraints werden durch ein Gauss-Seidel-Lösungsverfahren und ein Gauss-Jakobi-Lösungsverfahren gelöst. Die Berechnungen finden dabei komplett auf der GPU statt. Die Ergebnisse sind physikalisch plausible Simulationen, die in Echtzeit laufen.
Im Rahmen dieser Masterarbeit wird das Prinzip des hybriden Ray Tracing, einer Kombination einer Rasterisierungs-Pipeline mit Ray Tracing-Verfahren für einzelne Effekte, vorgestellt und eine Anwendung implementiert, welche innerhalb einer hybriden Ray Tracing-Pipeline Schatten, Umgebungsverdeckung
und Reflexionen berechnet und diese Effekte mit der direkten Beleuchtung kombiniert.
Das hybride Ray Tracing basiert auf der Idee, die Performance und Flexibilität von Rasterisierungs-Pipelines mit Ray Tracing zu kombinieren, um die Limitation der Rasterisierung, nicht auf die gesamte Umgebungsgeometrie an jedem Punkt zugreifen zu können, aufzuheben.
Im Rahmen der Implementation wird in die verwendete RTX-API sowie die Grafikschnittstelle Vulkan eingeführt und diese anhand der Implementation erklärt. Auf Grundlage der Ergebnisse und der Erkenntnisse bei der Nutzung der API wird diese, ihre Einsatzzwecke und Ausgereiftheit belangend, eingeschätzt.