File(s): | Download Download 2 |
License: | Apache-2 |
Optimized for... | |
---|---|
Operating System: | Microsoft* Windows® 10 (64 bit) |
Hardware: | N/A |
Software: (Programming Language, tool, IDE, Framework) | C++, Visual Studio 2015, LLVM |
Prerequisites: | Familiarity with Visual Studio, 3D graphics, parallel processing. |
Tutorial: | Merging Masked Occlusion Culling Hierarchical Buffers for Faster Rendering |
Introduction
Efficient occlusion culling in dynamic scenes is a very important topic to the game and real-time graphics community in order to accelerate rendering. Masked Software Occlusion Culling [J. Hasselgren, M. Andersson, T. Akenine-Möller] presented a novel algorithm optimized for SIMD-capable CPUs that culled 98% of all triangles culled by a traditional occlusion culling algorithm. This update to the original Masked Occlusion library presents an addition to the original work that address the problem where silhouettes edges can bleed through the buffer when submitting complex unsorted geometry by splitting a scene into multiple buffers that better fit local dynamic ranges of geometry and that can be computed concurrently.
Get Started
Core masked occlusion culling library
The code additions form part of the core Intel Masked Occlusion library and have been integrated into the original source files. The library comes with visual studio projects to build the algorithm as a static lib for inclusion into another project, a performance benchmark test and a validation sample that tests the internal correctness of the mask occlusion results. The library does not include a sample of using the library in a gaming environment.
Related samples
An early example of the mask occlusion library used in a 3D workload can be found here although this sample is in maintenance mode and does use the latest build of the mask occlusion library.
References
Merging Masked Occlusion Culling Hierarchical Buffers for Faster Rendering
Original Masked Occlusion Whitepaper.
Updated Log
Created March 23, 2017