All Projects → lebarba → Image-Space-Occlusion-Culling-Engine

lebarba / Image-Space-Occlusion-Culling-Engine

Licence: other
SOCE is an Image Space Occlusion Culling Engine optimized to perform occlusion culling in CPU. If you have a densely occluded scene (e.g. urban, indoor scene) you can use this module in you 3D project to speed up the rendering.

Programming Languages

C#
18002 projects
MAXScript
40 projects
C++
36643 projects - #6 most used programming language

Image Space Occlusion Culling Engine

ISOCE is an Image Space Occlusion Culling Engine optimized to perform occlusion culling in CPU. If you have a densely occluded scene (e.g. urban, indoor scene) you can use this module in you 3D project to speed up the rendering.

ISOCE does not depend on any Graphics API ( OpenGL, DirectX) since it is implemented in CPU and it is executed before sending the objects to the rendering pipeline.

ISOCE is DLL module programmed in C++, optimized using SSE intrinsics and is based on Hierarchical Occlusion Maps.

For statically generated PVS there is a Project called Janua: https://github.com/gigc/Janua

image

Overview of how it works:

Select and generate the best occluders of your scene. Calculate their conservative axis aligned boxes. In every frame project the occluder´s conservative axis aligned boxes into screen space. Call ISOCE DLL module and send the occluder´s visible faces for rasterization. For every visible object you want to test for occlusion send the object´s 2D bounding box and depth. ISOCE will determine if your object is occluded or it is potentially visible. How to use the module:

Visit Documentation page

This engine is based on the paper called: Techniques for Image Space Occlusion Culling Engine

Want to help to improve it or have any comments?

Please contact me at lebarba at gmail.com

Authors:

Leandro Barbagallo (lebarba at gmail.com)

Matias Leone (leonematias at gmail.com)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].