Hier finden Sie wissenschaftliche Publikationen aus den Fraunhofer-Instituten.

Accelerated ray tracing using R-trees

: Feldmann, Dirk

Volltext urn:nbn:de:0011-n-3324053 (974 KByte PDF)
MD5 Fingerprint: ed76ef953cda05e95728de738dba7e93
Erstellt am: 5.5.2016

Braz, J. ; Institute for Systems and Technologies of Information, Control and Communication -INSTICC-, Setubal:
GRAPP 2015, 10th International Conference on Computer Graphics Theory and Applications. Proceedings : Berlin, Germany, 11 - 14 March 2015, Part of VISIGRAPP
SciTePress, 2015
ISBN: 978-989-758-087-1
International Conference on Computer Graphics Theory and Applications (GRAPP) <10, 2015, Berlin>
International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications (VISIGRAPP) <10, 2015, Berlin>
Konferenzbeitrag, Elektronische Publikation
Fraunhofer IOSB ()
ray tracing; R-Tree; acceleration; spatial index; GPU; CUDA; stackless algorithm

Efficient ray tracing for rendering needs to minimize the number of redundant intersection tests between rays and geometric primitives. Hence, ray tracers usually employ spatial indexes to organize the scene to be rendered. The most popular ones for this purpose are currently kd-trees and bounding volume hierarchies, for they have been found to yield best performances and can be adapted to contemporary GPU architectures. These adaptations usually come along with costs for additional memory or preprocessing and comprise the employment of stackless traversal algorithms. R-trees are height-balanced spatial indexes with a fixed maximum number of children per node and were designed to reduce access to secondary memory. Although these properties make them compelling for GPU ray tracing, they have not been used in this context so far. In this article, we demonstrate how R-trees can accelerate ray tracing and their competitiveness for this task. Our method is based on two traversal schemes that exploit the regularity of R-trees and forgo preprocessing or alterations of the data structure, with the first algorithm being moreover stackless. We evaluate our approach in implementations for CPUs and GPUs and compare its performance to results we obtained by means of kd-trees.