Hacker News new | ask | show | jobs
by hughes 2606 days ago
It still sounds a lot like BVHs. Maybe I need to read it more carefully, but I can't tell the difference.
1 comments

AFAICT, they use whatever BVH you want above the individual mesh level. Then, within the mesh, they use a kd-tree with 2 parallel, overlapping half-spaces at each node. The triangles are stored as a bunch of triangle strips in a linear array. Each node of the kd-tree refers to span of the triangle strips. The spans hierarchically get smaller the further down the tree you go, but technically you can run through a linear array of triangles for any node. They stop subdividing at 4 triangles because SIMD.

Did I miss anything?

Looks like the primary speed up is due to memory footprint reduction --especially because the largest model is big enough in the "standard BVH" that it hits swap during rendering. Not sure what their "standard BVH" representation is that's 6X larger than triangle strips.