Traversing a BVH Cut to Exploit Ray Coherence

Roberto Torres, Pedro J. Martin, Antonio Gavilanes

GRAPP 2011: 6th International Conference on Computer Graphics and Applications 2011 (Vilamoura, Portugal). Conference Proceedings, SciTePress, pp. 140-150

In this paper we study how to deal with the ray incoherence that naturally arises in path tracing-based systems.
We introduce the notion of BVH Cut to split the tree into a forest of disjoint subtrees. We will use it to
filter the rays that are successively generated by the path tracing algorithm. Each subtree is then traversed
by its corresponding group of rays. Despite the overload of filtering all the rays each time, a significant
profit is achieved. Nevertheless, constructing a BVH cut is a challenging task, because it can lead to a huge
amount of work if the same rays belongs to many groups. Thus, we present two kind of building heuristics:
structural heuristics that characterizes the root of a subtree by a property (the node’s depth or the surface area
of its bounding volume in this paper), and optimization heuristics that are based on the Simulated Annealing
method. The performance of traversing the cuts so built has been experimentally analyzed over four usual
scenes, using two popular implementations of the subtree traversal (persistent while-while / persistent packet).
The results show a relevant saving time w.r.t. the classic BVH traversal, that grows as the ray incoherence
increases. The best saving ranges from 32.0% / 40.9% for structural heuristics, to 32.0% / 51.7% for cuts built
with Simulated Annealing.

Download: pdf bibtex Conference URLurl