Fast kd-tree Construction with an Adaptive Error-Bounded Heuristic

Construction of effective acceleration structures for ray tracing is a well studied problem. The highest quality acceleration structures are generally agreed to be those built using greedy cost optimization based on a surface area heuristic (SAH). This technique is most often applied to the construction of kd-trees, as in this work, but is equally applicable to the construction of other hierarchical acceleration structures. Unfortunately, SAH-optimized data structure construction has previously been too slow to allow per-frame rebuilding for interactive ray tracing of dynamic scenes, leading to the use of lower-quality acceleration structures for this application. The goal of this paper is to demonstrate that high-quality SAH based acceleration structures can be constructed quickly enough to make them a viable option for interactive ray tracing of dynamic scenes. We present a scanning-based algorithm for choosing kd-tree split planes that are close to optimal with respect to the SAH criteria. Our approach approximates the SAH cost function across the spatial domain with a piecewise quadratic function with bounded error and picks minima from this approximation. This algorithm takes full advantage of SIMD operations (e.g., SSE) and has favorable memory access patterns. In practice this algorithm is faster than sorting-based SAH build algorithms with the same asymptotic time complexity, and is competitive with non-SAH build algorithms which produce lower-quality trees. The resulting trees are almost as good as those produced by a sorting-based SAH builder as measured by ray tracing time. For a test scene with 180 k polygons our system builds a high-quality kd-tree in 0.26 seconds that only degrades ray tracing time by 3.6% compared to a full quality tree

[1]  Markus Wagner,et al.  Interactive Rendering with Coherent Ray Tracing , 2001, Comput. Graph. Forum.

[2]  Alexander Reshetov,et al.  Fast Ray Tracing for Modern General Purpose CPU , 2002 .

[3]  Thomas Larsson Strategies for Bounding Volume Hierarchy Updates for Ray Tracing of Deformable Models , 2003 .

[4]  Philipp Slusallek,et al.  B-KD trees for hardware accelerated ray tracing of dynamic scenes , 2006, GH '06.

[5]  Greg Humphreys,et al.  Physically Based Rendering: From Theory to Implementation , 2004 .

[6]  John Salmon,et al.  Automatic Creation of Object Hierarchies for Ray Tracing , 1987, IEEE Computer Graphics and Applications.

[7]  Hans-Peter Seidel,et al.  Ray Tracing Animated Scenes using Motion Decomposition , 2006, Comput. Graph. Forum.

[8]  Alexander Reshetov,et al.  Multi-level ray tracing algorithm , 2005, ACM Trans. Graph..

[9]  Sigal Ar,et al.  Deferred, Self‐Organizing BSP Trees , 2002, Comput. Graph. Forum.

[10]  Vlastimil Havran,et al.  On Improving KD-Trees for Ray Shooting , 2002 .

[11]  Kellogg S. Booth,et al.  Heuristics for ray tracing using space subdivision , 1990, The Visual Computer.

[12]  Andrew S. Glassner,et al.  An introduction to ray tracing , 1989 .

[13]  D. Manocha,et al.  RT-DEFORM: Interactive Ray Tracing of Dynamic Scenes using BVHs , 2006, 2006 IEEE Symposium on Interactive Ray Tracing.

[14]  Carsten Benthin,et al.  Realtime ray tracing on current CPU architectures , 2006 .

[15]  Aaron Knoll,et al.  Ray tracing animated scenes using coherent grid traversal , 2006, SIGGRAPH 2006.

[16]  S. Popov,et al.  Experiences with Streaming Construction of SAH KD-Trees , 2006, 2006 IEEE Symposium on Interactive Ray Tracing.

[17]  Ingo Wald,et al.  Ray tracing deformable scenes using dynamic bounding volume hierarchies , 2007, TOGS.

[18]  Philipp Slusallek,et al.  Distributed interactive ray tracing of dynamic scenes , 2003, IEEE Symposium on Parallel and Large-Data Visualization and Graphics, 2003. PVG 2003..

[19]  Alexander Keller,et al.  Instant ray tracing: the bounding interval hierarchy , 2006, EGSR '06.

[20]  I. Wald,et al.  On building fast kd-Trees for Ray Tracing, and on doing that in O(N log N) , 2006, 2006 IEEE Symposium on Interactive Ray Tracing.

[21]  Kellogg S. Booth,et al.  Report from the chair , 1986 .

[22]  H.-P. Seidel,et al.  On the Fast Construction of Spatial Hierarchies for Ray Tracing , 2006, 2006 IEEE Symposium on Interactive Ray Tracing.