☑ Ambient occlusion no applying?


I’m trying to add realism to my scene by employing some baked light. I read up on the generated lightmaps feature and it sounds good, but I really want to try and add GI or at least ambient occlusion. But, I can’t seem to get it to work.

My pipeline is:

Cinema 4D (baking out textures) → export to FBX → Playcanvas

I use a cubemap RGBM/HDR image in the environment slot for lighting and reflection, but then when I try to add the ambient map into the ambient slot, I just don’t see any difference. Cavities are still bright. Is there something wrong with my UV maps?

Perhaps someone can shine a light on this


You’ve applied AO map on UV1, and your model has no UV1.
At the bottom, Attributes:

Right. I figured it was something with the UVs. The thing is, I’m not sure if you’re familiar with C4D, but I only have one UV map and it sure doesn’t look like what’s shown If I try to place that texture in UV0 slot.

In cinema it’s applied like this (applied to the luminance just for clarity):

But in Playcanvas the UV0 channel looks like this:

I wonder if there is something going on in the C4D -> FBX import or later.

Your tiling on material is 7,7.

1 Like

Ah, thank you! That was obviously it. I’m not too familiar with UV mapping at all actually. I guess I was bumping that number to get my Normal map to appear more dense.

Now I’ll keep experimenting and see whether I can do with Ambient occlusion or if I need something more advanced.
What is the difference betwenn the ambient slot and the lightmap slot really?

You can uncheck “Apply to all Maps” and set normal map UV tiling specifically.

AO - is totally fake thing, essentially tries to say how much less of reflection should appear in certain areas based on occlusion. It simulates that in corners there is less light to land. It does behaves differently with dynamic lights and IBL. Mostly AO is visible in shadow, and light pretty much ignores it.

Lightmap - is just saying what colour and intensity of light is getting on pixel. Your lightmap can contain, and in fact it already does GI.

So if you are going to use any dynamic lights or IBL (using prefiltered cubemaps), perhaps with box projected cubemap to simulate pretty reflections like in Orange Room, then you would want to provide AO maps.
If you are making only Lightmapped environment, and don’t want any IBL, then AO is pretty useless as Lightmap can contain that data.

Lightmap - only cases, are rare today, as they don’t provide enough of cool detail like glossiness or metaliness of materials, and nor will interact with normal maps.
So based on your content above, I can see that you do want AO here :slight_smile:

1 Like

Great explanation, I’ll bake ambient occlusion maps and use them together with cubebox.