Ambient occlusion serves to provide a game with more realistic ambient lighting.
Once upon a time, in the distant year 2000, textures and polygon counts were the most important cornerstones of what could be considered “good graphics”. But those were quickly pushed to their limits and served only as a stepping stone towards truly photorealistic games.
The most important aspect of photorealism, developers found, was the lighting. And while rendering character shadows in real-time was not too difficult, having every inch of the in-game environment be subject to natural lighting was a completely different matter.
This is where ambient occlusion steps in.
What Does Ambient Occlusion Do?
As mentioned above, ambient occlusion ensures more realistic ambient lighting by calculating just how bright certain parts of the screen should be based on geometry.
Basically, it determines how much light should be “blocked” by a certain part of the environment.
The Types of Ambient Occlusion
The most common type of ambient occlusion is SSAO, or screen-space ambient occlusion. It is the least demanding out of all types of ambient occlusion, although the actual quality of the effect can vary greatly from game to game based on how well it was implemented by the developers.
Apart from SSAO, there are also HBAO (horizon-based ambient occlusion) and HDAO (high-definition ambient occlusion). These two technologies belong to Nvidia and AMD respectively and thus perform better on their respective graphics cards. These two types of AO are fairly similar, both offer higher-quality ambient occlusion but with a higher performance hit. However, they are not as commonly implemented in games as SSAO is.
And lastly, there is also the recently introduced VXAO (voxel ambient occlusion) which was also developed by Nvidia as a successor to HBAO, although it is a bit more demanding by today’s standards and only high-end GPUs are able to take full advantage of it.
Should You Use Ambient Occlusion?
Back when it was introduced in 2007 with Crysis, SSAO was a bit too much to handle for a lot of GPUs of that time. Today, however, the negative effect on performance is hardly noticeable due to the advanced GPU architectures used in modern graphics cards. As such, even if you’re looking to squeeze in as much extra performance as possible, you’d be better off turning down some more demanding settings.
As for which type of ambient occlusion to use, the answer is rather simple – always use the advanced types of ambient occlusion if they are available and if your GPU can handle them. This means HBAO, HBAO+ or VXAO on Nvidia graphics cards and HDAO on AMD cards.
If none of the above are supported or if there are GPU compatibility issues, then SSAO is always a good choice. It will produce a very immersive environment and with a minimal performance impact.