Real-Time Implementation of OpenVDB Rendering
- In this thesis the possibilities for real-time visualization of OpenVDB files are investigated. The basics of OpenVDB, its possibilities, as well as NanoVDB and its GPU port, were studied. A system was developed using PNanoVDB, the graphics API port of OpenVDB. Techniques were explored to improve and accelerate a single ray approach of ray tracing. To prove real-time capability, two single scattering approaches were also implemented. One of these was selected, further investigated and optimized to achieve interactive real-time rendering. It is important to give artists immediate feedback on their adjustments, as well as the possibility to change all parameters to ensure a user friendly creation process. In addition to the optical rendering, corresponding benchmarks were collected to compare different improvement approaches and to prove their relevance. Attention was paid to the rendering times and memory consumption on the GPU to ensure optimal use. A special focus, when rendering OpenVDB files, was put on the integrability and extensibility of the program to allow easy integration into an existing real-time renderer like U-Render.
- 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.
Author: | Sebastian Gaida |
---|---|
Referee: | Stefan Müller, Vanessa Schüller |
Advisor: | Vanessa Schüller |
Document Type: | Master's Thesis |
Language: | English |
Date of completion: | 2022/08/17 |
Date of publication: | 2022/08/18 |
Publishing institution: | Universität Koblenz, Universitätsbibliothek |
Granting institution: | Universität Koblenz, Fachbereich 4 |
Date of final exam: | 2022/07/29 |
Release Date: | 2022/08/18 |
Tag: | OpenVDB; Real-Time |
Number of pages: | ii, 74 Seiten |
Institutes: | Fachbereich 4 |
Dewey Decimal Classification: | 0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 004 Datenverarbeitung; Informatik |
BKL-Classification: | 54 Informatik / 54.73 Computergraphik |
Licence (German): | Es gilt das deutsche Urheberrecht: § 53 UrhG |