Authors:
R. Torres
;
P. J. Martín
and
A. Gavilanes
Affiliation:
Universidad Complutense de Madrid, Spain
Keyword(s):
Coherence, Bounding volume hierarchy, CUDA, Path tracing, Ray tracing.
Related
Ontology
Subjects/Areas/Topics:
Computer Vision, Visualization and Computer Graphics
;
High-Performance Computing and Parallel Rendering
;
Rendering
;
Rendering Algorithms
Abstract:
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 t
wo 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.
(More)