B-KD trees for hardware accelerated ray tracing of dynamic scenes

  • Authors:
  • Sven Woop;Gerd Marmitt;Philipp Slusallek

  • Affiliations:
  • Saarland University, Germany;Saarland University, Germany;Saarland University, Germany

  • Venue:
  • GH '06 Proceedings of the 21st ACM SIGGRAPH/EUROGRAPHICS symposium on Graphics hardware
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper introduces a new spatial index structure, called Bounded KD tree (B-KD tree), for realtime ray tracing of dynamic scenes. By presenting hardware units of all time critical B-KD tree algorithms in the context of a custom realtime ray tracing chip we show that this spatial index structure is well suited for hardware implementation. B-KD trees are a hybrid spatial index structure that combine the advantages of KD trees and Bounding Volume Hierarchies into a single, simple to handle spatial index structure. Similar to KD trees, B-KD trees are binary trees where each node considers only a single spatial dimension. However, instead of a single splitting plane that divides space into two disjoint sub-spaces, each node in B-KD trees contains two pairs of axis aligned planes that bound the geometry of its two child nodes. As a bounding volume approach B-KD trees allow for simple and efficient updates when changing geometry while maintaining the fast traversal operations and simple hardware implementation known from KD trees. This enables the support for dynamic scenes with constant mesh topology and coherent dynamic changes, like typical skinned meshes. Our hardware architecture contains several fixed-function units that completely handle skinning, updating, and ray tracing of dynamic scenes using B-KD trees. An FPGA prototype of this architecture already delivers realtime performance of up to 35 frames per second even when clocked at only 66 MHz.