Premium
GPU Ray Tracing using Irregular Grids
Author(s) -
PérardGayot Arsène,
Kalojanov Javor,
Slusallek Philipp
Publication year - 2017
Publication title -
computer graphics forum
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.578
H-Index - 120
eISSN - 1467-8659
pISSN - 0167-7055
DOI - 10.1111/cgf.13142
Subject(s) - tree traversal , octree , computer science , ray tracing (physics) , grid , distributed ray tracing , computer graphics (images) , subdivision , intersection (aeronautics) , data structure , regular grid , rendering (computer graphics) , tracing , computational science , algorithm , geometry , mathematics , physics , optics , programming language , archaeology , engineering , history , aerospace engineering , operating system
We present a spatial index structure to accelerate ray tracing on GPUs. It is a flat, non‐hierarchical spatial subdivision of the scene into axis aligned cells of varying size. In order to construct it, we first nest an octree into each cell of a uniform grid. We then apply two optimization passes to increase ray traversal performance: First, we reduce the expected cost for ray traversal by merging cells together. This adapts the structure to complex primitive distributions, solving the “teapot in a stadium” problem. Second, we decouple the cell boundaries used during traversal for rays entering and exiting a given cell. This allows us to extend the exiting boundaries over adjacent cells that are either empty or do not contain additional primitives. Now, exiting rays can skip empty space and avoid repeating intersection tests. Finally, we demonstrate that in addition to the fast ray traversal performance, the structure can be rebuilt efficiently in parallel, allowing for ray tracing dynamic scenes.