Quadtrees on the GPU

We present a method to implement quadtrees on the GPU. It relies on linear trees, a pointer-free alternative to recursive trees, that represents nodes as bit codes. We explain how to update this data structure with node splitting and merging, and show how to render multiresolution, crack-free surfaces with frustum culling using hardware tessellation and a distance-based LOD selection criterion. Our implementation is both fast and lightweight, and runs asynchronously on the GPU, leaving CPU resources available for other tasks.