By Jon Hasselgren, Magnus Andersson, and Tomas Akenine-Möller
Intel Corporation
Efficient occlusion culling in dynamic scenes is a very important topic to the game and real-time graphics community in order to accelerate rendering. We present a novel algorithm inspired by recent advances in depth culling for graphics hardware, but adapted and optimized for SIMD-capable CPUs. Our algorithm has very low memory overhead and is 3x faster than previous work, while culling 98% of all triangles culled by a full resolution depth buffer approach. It supports interleaving occluder rasterization and occlusion queries without penalty, making it easy to use in scene graph traversal or rendering code.
Source code
The source code for this paper is available online through Intel's developer zone GitHub. There is a light weight Masked Occlusion Culling Library, which has also been integrated into Intel's Occlusion Culling Sample. Please note that the performance may not exactly match the results of the paper, as we have reworked the code to allow for a simple API.