Ambient Occlusion techniques

Hi everyone,

I’m planning to implement some form of ambient occlusion computation for my engine. I was thinking about a screen-space technique, however, I don’t know the subject enough to decide which technique to implement/integrate.

I think the following notes could be relevant for the choice:

  • Forward renderer
  • Blinn-Phong model (no pbr)
  • CAD context

Since realism is not the focus of the application I was wondering if maybe there were less physically inspired algorithms to compute ambient occlusion (like curvature-based ao for example) since in this context ao should be more about scene readability than accuracy.

How would you deal with this choice?

There is a highly optimized implementation of a good screen-space ambient occlusion technique available on MIT license on GPUOpen website / GitHub, called “CACAO”.

The shader is prepared for Vulkan and DX12 but maybe it could be easy to port to OGL GLSL.

1 Like