SSAO Sample
This is the project I did for my bachelor's degree. It is an implementation of current (as of 2010) state of the art Screen Space Ambient Occlusion (SSAO) techniques. It is implemented as a fork of the Ogre3D rendering engine and is hosted on github.
The goal of this project was to implement the techniques as they are given in the papers, not to have an optimized and production ready solution. It was also my first endeavour with Ogre3D in particular and slightly more advanced cg stuff in general. In short, I learned a lot and would do many things differently now.
The SSAO algorithms are implemented as a plugin for the (new, at that time) sample browser. You can find a compiled windows binary distribution in the downloads section on github. It should run fine with both NVidia and ATI cards.
Implemented techniques:
- Unsharp masking the depth buffer [Luft et al., 2006]
- Crease shading [Fox and Compton, 2007]
- Crytek (depth buffer only) [Kajalin, 2009]
- normal alligned hemispherical MC sampling
- Horizon based AO [Bavoil and Sainz, 2009]
- Volumetric AO [Szirmay-Kalos et al., 2010]
The complete documentation with all the details can be found here. As usual all my source code is licensed under the MIT license, see the licensing information in the repo for more details.
An accompanying extras repository with a few Matlab files to generate random textures and result images is also available.
Add new comment