Ambient Occlusion in short is a games ability to provide real life, or close to real life, lighting for a scene while taking into consideration shadow, multiple light sources and objects which may somehow interact with light. I have provided a small image gallery showing the difference between having ambient occlusion off and on does to Starcraft 2, as provided by the ever helpful Nvidia.
There once was a time when there was no such thing as ambient occlusion in games, actually it was first introduced by Crysis developers Crytek in 2007. As you can expect there was no where near the amount of GPU or CPU power we have today, meaning Crytek were forced to implement a very scaled down version of ambient occlusion called Screen Space Ambient Occlusion – SSAO. The best part about this new implementation was it had no effect on CPU resources and was completely dependant on the GPU. SSAO uses what is considered pixel depth and not the “real” space or geometry within the scene, this means it is less demanding on the hardware and gave a decent sense of ambient occlusion – well for back in 2007 it did.
In 2009 game developers started using Screen Space Directional Occlusion (SSDO). This was a great upgrade to the previous SSAO as it took into consideration the ambient light around a scene as well as objects and directional shadows. SSDO allowed for a truer representation of a scene by taking into account the direction of light (or lights) in a specific scene as well as any light reflections (bounces).
Like everything in gaming, or at least if feels that way, AMD and Nvidia both have their own ambient occlusion drivers; HDAO and HBAO respectively. As expected if you have an AMD graphics card then the AMD drivers will work better and if you have an Nvidia graphics card then their driver will work better – although when I say better, I mean with that based on resources used. Generally speaking Nvidia’s HBAO does seem to provide better results in some games. Personally I tend to go with what ever look great and doesn’t kill performance so just test it out on your games.
Is that it? Nope. There is one more! Nvidia have released an upgrade to their HBAO (and now these days HBAO+ which is which is called VXAO (Voxel Ambient Occlusion). VXAO is the most advanced version of ambient occlusion but it is VERY performance heavy, which means only the top of the range graphics cards have enough resources to make the most of it. Nvidia have said that it is actually 3 to 4 times slower than HBAO+. The reason for this is simply down to the scale of which VXAO will work, taking into consideration anything off screen which may effect shadows or lights. Rise Of The Tomb Raider is a great example of how well it works and how resource heavy it can be!
Should I Use Ambient Occlusion?
This is a simply one to answer, yes.
Longer answer: It really depends on your gaming hardware but I would always recommend having some sort of AO enabled even if it is SSAO, the least resource heavy. In my opinion there is no point in paying hundreds of dollars on a graphics card and having a game that looks unrealistic, especially in 2018. Don’t get me wrong if it was 2007 or even 2010 I would say you can do without it but assuming your computer wasn’t built 7 or 8 years ago then you should be able to get some sort of AO in most of your games.
Which type of Ambient occlusion you pick is completely up to you. My suggestion would be to start at the top and work down based on performance. If you can’t get good framerates with VXAO then drop down to HBAO; assuming your on Nvidia. The same goes for AMD GPUs, just start with HDAO and then work down. Generally with my GTX1080 I try to max games out close to ultra and then taper my settings down a little. Personally I would prefer to have ambient occlusion maxed out and shadow settings a little lower as for me it just looks a little better when the whole scene has some sort of lighting effects.
I hope this has helped you understand what Ambient occlusion is and what settings might work best for you. As always let me know if you have any questions, comments or problems with your setup in the comments below.