Fast kd-tree Construction with an Adaptive Error-Bounded Heuristic
- 1 September 2006
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
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 treeKeywords
This publication has 9 references indexed in Scilit:
- On the Fast Construction of Spatial Hierarchies for Ray TracingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- RT-DEFORM: Interactive Ray Tracing of Dynamic Scenes using BVHsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- Experiences with Streaming Construction of SAH KD-TreesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- On building fast kd-Trees for Ray Tracing, and on doing that in O(N log N)Published by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- B-KD trees for hardware accelerated ray tracing of dynamic scenesPublished by Association for Computing Machinery (ACM) ,2006
- Distributed interactive ray tracing of dynamic scenesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2004
- Deferred, Self-Organizing BSP TreesComputer Graphics Forum, 2002
- Heuristics for ray tracing using space subdivisionThe Visual Computer, 1990
- Automatic Creation of Object Hierarchies for Ray TracingIEEE Computer Graphics and Applications, 1987