[sldev] screen space ambient occlusion

Argent Stonecutter secret.argent at gmail.com
Sat Jul 26 13:59:30 PDT 2008


> While
> the screen-space part is a bit of a hack, AO itself is a real-world
> phenomenon unrelated to sun shadows,

I'm not talking about just "sun shadows" here.

> not "faking shadowing" at all.


"Ambient Occlusion" is not a real world phenomenon. It is an  
approximation to the effect of shadowing in the presence of diffuse  
light.

The result is that if you use AO to render a scene, you get dark  
shadows in corners, for example where walls meet the floor, in places  
where there's no shadowing in RL. It's got nothing to do with the  
quality of the implementation, it's purely a function of the fact  
that the adjacent wall or corner is seen as occluding the ambient  
light by the AO algorithm. I suppose you could apply second or third  
degree calculations and only treat surfaces that aren't fully  
illuminated in the absence of AO as being potential sources of shadows.

Now I'm not saying that it's not a useful hack, I'm mostly objecting  
to the idea that it's some kind of gold standard for rendering. I'm  
mostly taking issue with Qarl's comment that "screen space ambient  
occlusion is the je-ne-sais-quoi of rendering realism". It's not,  
it's a clever approximation, but it's a long way from optical realism.



More information about the SLDev mailing list