Subtractive Ambient Occlusion

I know they’ve been gone a while but are subtractive and “both” Ambient occlusion styles going to return? I really really miss them.

(Or can somebody make my day and show me that they’ve been there the whole time)

You could theoretically composite in manually. I have a strong feeling this is an unsatisfactory answer :stuck_out_tongue:

I wish you were here in person so I could demonstrate quite how unsatisfactory an answer that is. Only joking, but how could I composite if I can’t render in the first place?

It’s a real shame because it isn’t half the renderer it would be with it.

I think I’ll stop with blender soon. I’ve taken it as far as I can really.

Anyway, surely ambient occlusion is subtractive by definition. What blender 2.5x has is ambient addition!

The usual mode for ambient occlusion is to use multiply. Use the AO to darken and the Environment Lighting to lighten.

ambient occlusion should only be multiplied against an ambient light,, I not really sure what blender does when you choose multiply for ambient occlusion I think it just multiplies it against all you lights.

If the environment lighting is blender equivalent of an ambient light than, ambient occlusion should be multiplied against your environment lighting pass and than added to your diffuse and specular passes

To subtract AO with the compositor:

In render layers enable AO
Click the camera next to it to exclude it from the combined render
Set up your AO
Subtract AO from combined in the compositor
You might want to invert AO before subtracting

Wouldn’t know why you would want to subtract though, looks rather crappy

(LOL the default dev response. Bless em)

Just using envi-light and multiply AO does precisely nothing. (see attached file- the image renders the same whether AO multiply is off or set to 10000)

AO multiply works when you have a light in the scene, darkening the shading of that light but that’s not really ambient occlusion is it?

You used to be able to use environment light (additive ao) and sub ao together to get some really nice effects. Without ever having a point light in the scene. I don’t really think you can call this ambient occlusion. The way 2.49 did it was much better.

(Damn I cant attach a file, but if you use ambient occlusion in a scene without any lights so you are just using envi light and Ao multiply you’ll see there is no effect. Multiply only works to darken the shading of normal lights, not the ambient light)

We’ll have to agree to differ on how it looks. (but if you look on the links in my sig at the old woman model. She wouldn’t look half as good if AO wasn’t creating little packets of darkness in her wrinkles.)

Re your method. I prefer the method in 2.49 which was to press this little button which said “sub”.

Could it be a bug. Is multiply supposed to be darkening Ambient shading.

Some example files

The renderer is going to be revamped. It would be a waste of effort start to add more things when all the renderer and materials are going to be coded anew.

It isnt adding anything, its fixing somthing thats broken

Just using envi-light and multiply AO does precisely nothing. (see attached file- the image renders the same whether AO multiply is off or set to 10000)

You may need to adjust the shadow falloff (in other words lengthen the distance the occlusion effect works in)

Generally you might want it at 0.001 (or a negative number even if you need the effect over long distances)

It is addding because you can’t get the old code and copy paste. It needs a rewrite. I see it as a waste of time when in some months the entire system is going to be coded new.

I don’t think that works well at all. I can’t post the image it produced but it doesn’t look right.

My point is, surely AO factor should effect environmental lighting as well as standard lights so, A. you get control over environmental AO and B. environmental and standard light AO will match.

Edit if you go to the other tread I’ve linked above you will see what I mean in the second test scene. The AO produced by the light is much darker than the AO produced by the environment light.

How do you know how big a job it is?

I’ve uploaded the an image to illustrate the issue. (Obviously I’ve exaggerated the AO multiply factor for the sake of clarity.)

The mouth best demonstrates the problem.
Notice on the bottom lip there is a very dark patch (this is the AO caused by the light in the scene).
Then see how it suddenly stops as it enters the mouth and it becomes light again. This is because Environment AO is not effected by the “AO factor” so it doesn’t match the lights AO.

I would never or rarely anyway use the built in AO for final renders. I’d recommend adding AO from within the compositor. You’ll likely want to add it to your final render to create even light as well as add it again later to darken the shadows which will be overly lightened by the AO. But you’ll want to do it in a controlled way. I usually separate the lights and AO then composite them back together.

This method is probably why the AO settings aren’t exactly as you desire. It wasn’t a priority because in production it’s unlikely to be used in that way. So they didn’t rush to add it back in yet. Once you do it in post you’ll never go back to the old way. It’s much more free.

ps. your link doesn’t work…

Ok cheers Nichod I might give that a go. But I must say I had no problem with doing it “in one go” and thought it worked well in 2.49.

And cheers for the heads up on the link.

I’ve reported it as a bug, but they say it’s meant to be this way, which is what they always say…every single time…