空间划分结构(Spatial Data Structures & Subdivision),是另一类用于加速碰撞检测、可见性测试、射线投射等问题的结构。相比 BVH 是“以物体为中心”的包围策略,空间划分结构是“以空间为中心”的策略。


把整个模拟空间切成固定大小的格子(voxels),然后看每个物体占了哪些格子,最后只在同一个格子里的物体之间检测碰撞。
优点:结构简单,构建快
缺点:密度不均时浪费严重(大部分格子可能是空的)

2D 是 quadtree(每个节点 4 个子区域)
3D 是 octree(每个节点 8 个子区域)
Use divide-and-conquer(分治思想)
把整个空间看成一个大 cube:
判断里面是否“太满”
→ 比如含有超过 10 个物体
如果是,就把这个 cube 分成 8 小块(八个子 cube)
每个子 cube 递归处理
直到每个 leaf node(叶子)内部只含少量物体。
相比 grid 更省空间