Friday, April 12, 2013

Ambient Occlusion

Ambient Occlusion

Ambient occlusion is a great way to give a scene more definition in a scene and therefore making it look better. Ambient occlusion is a process that tries to simulate the absents of light in hard to get places like a sharp corner in a room. Theres basically two ways you can do ambient occlusion in a game. one is have the AO (Ambient Occlusion) baked into the texture or have it done dynamically at run-time on a shader in the game.

http://www.interstation3d.com/tutorials/making_slow_decay/slow_decay_take07.htm


Baking in the AO is not a hard as programs like Maya can bake in the AO onto a texture and it's sample rate and texture size will determine how good that will look. Also putting that in a game is even easier because all you have to do is apply that texture to the mesh and BAM AO. But this also has some draw back the AO is only correct if the scene is completely static. If an object moves then the AO could look incorrect.

http://features.cgsociety.org/cgfilms/cgfilm.php?story_id=3572


Dynamically doing AO on a shader is good because of the AO looks correct when objects move around. The quality of the AO is based on how many samples the shader takes and if it is downscale. The draw back of the SSAO (Screen Space Ambient Occlusion) shader is that it can get really expensive fast. It is common practice to downscale the scene and take low samples to try to cut on expensive operations.

http://commons.wikimedia.org/wiki/File:Screen_space_ambient_occlusion.jpg 


No comments:

Post a Comment