Game Development Reference
Memory footprint (MB) for different structures:
SLBVH with varying
depth, SAH-based BVH, and SKD-Tree.
Contrary to common structures, the SLBVH stores empty nodes in order to
satisfy the arithmetic operations (which allow us to traverse the heap without
a stack). The percentage of occupied nodes versus empty nodes is considerably
low, as shown in Figure 1.7. However, the geometry is not well partitioned given
that the middle-split scheme based on Morton codes is not optimal for balanced
distributions. On the other hand, using SAH for all levels (or perhaps just the
first few levels) of the structure might improve the tree quality. Yet, a tradeoff
between construction time and traversal performance must be accomplished. A
faster traversal does not mean a more e cient structure on dynamic scenes.
Figure 1.7. SLBVH nodes distribution. The red and blue colors represent empty nodes
and occupied nodes, respectively on the (a) Stanford Bunny (depth = 18), (b) Crytek
Sponza (depth = 21), and (c) Welsh Dragon (depth=23) models. The primitive-per-leaf
ratio is 1.72, 2.98, and 2.35, respectively.