Download

Ambient Occlusion not working

Hello, I have a strange problem in my project.
Ambient occlusion is not showing up!
I am using distance field ambient occlusion, and AO just shows in the shadows of the world.

If I use unlit mode I can see the occlusion:

and this is if I set lit mode… the AO doesn’t show up

Why is this happening? I tried setting a default post process and default lights, I tried settings distance field off in rendering menù, nothing of this is working… this is really frustrating.

Do you know how can I resolve this? Thank you !

Ambient Occlusion generally is visible in the shadows. That’s why in Unlit mode, there is no direct lighting to affect the visibility of AO. That means AO will be visible practically on everything. Your second screenshot shows the direct light cast on your landscape. I can see in the shadows that the AO is working as intended. If your distant field AO wasn’t working, your shadows will be pitch black. To see how this is working, go to an area that has shadows. If you see any semblance of light in the shadow, the AO is working, else it should be pitch black. Is this correct?

This is really strange. This means that I can’t have AO in the lighted areas? Distance field AO is working, but it’s working just in the shadows. AO is not showing neither in the lighted area neither in the shadowed. This is terrible xD

Areas lit by a direct light receive a small fraction of ambient occlusion if I recall correctly. Maybe 25% or so?

I don’t remember AO just in shadows in the other games honesltly…

It’s more physically accurate and looks better to not have AO in direct lighting. Otherwise it looks muddy. If the game was completely in overcast lighting AO would be fine.

They won’t receive any.

Direct shadowing works for direct lighting.
Ambient occlusion works for indirect lighting.
Because usually(not alway) direct lighting is much more intense than indirect it will look like that AO does not contribute to areas which are not in shadows but this is just because indirect part is just so much less intense.