0
$\begingroup$

I have made a fairly simple house in blender using a single material with an image texture:

enter image description here

However, when I try to bake ambient occlusion I end up with a really weird result, I am very new to this so could be I'm making a simple mistake, but been searching for solution for a few hours and can't find any.

enter image description here

If I try to apply that to the model in my game engine in looks horrible:

enter image description here

I want to bake normals and AO, but not sure where I'm going wrong. I go to render -> cycles -> ambient occlusion -> bake. Same for normals.

My .blend file:

$\endgroup$
2
  • $\begingroup$ Have you UV unwrapped your model properly? $\endgroup$
    – globglob
    Nov 22, 2019 at 10:28
  • $\begingroup$ I have followed tutorials by minionsart which basically tells you to use "project from view" then drag the different parts onto the gradient color palette and move around as required. I do not know what you mean by "properly". $\endgroup$
    – Green_qaue
    Nov 22, 2019 at 10:31

2 Answers 2

1
$\begingroup$

as far as i can understand you have only one uv at the moment that gives you the colors on the mesh, you will have to create a second one, unwrap it (you can try and assist https://www.youtube.com/watch?v=scPSP_U858k), and bake your ao onto the second uv.

using two uv's can be a bit confusing (Multiple UV mapping in 2.8 eevee?)

good luck enter image description here

$\endgroup$
4
  • $\begingroup$ That does not sound right. Why would you need different UVs for AO and normal maps? $\endgroup$ Nov 22, 2019 at 13:22
  • 1
    $\begingroup$ because at the moment he is using the uv to map colors onto the mesh, and they are overlapping as well $\endgroup$
    – four two
    Nov 22, 2019 at 13:26
  • $\begingroup$ But you can use the same UV for all the maps ... ao, normal, diffuse, roughness ... $\endgroup$ Nov 24, 2019 at 10:32
  • $\begingroup$ true, but not the way he is doing it as he is using color map texture to color the model $\endgroup$
    – four two
    Nov 24, 2019 at 20:16
1
$\begingroup$

There are a few issues with this. The overwhelming issue, that needs fixing before you can go any further, is that there is overlap in the UV map:

enter image description here

Here I've selected a UV island. You can see plenty of other geometry behind it, on the same part of the UV. When you bake any kind of texture to this UV map, Blender will be writing data from more than one part of the mesh onto the exact same pixel of the texture. Which part of the mesh gets drawn on top is a crapshoot. You need to fix this before doing anything further.

The next thing is, look at how much UV space you're using-- just a tiny little fraction of your square. This means that the functional resolution of any bake using this UV map is going to be a fraction of the image texture. This will lead to lower resolution on your ambient occlusion, that smears out the AO over larger parts of the mesh than you want.

That especially a problem because of how much internal geometry you have:

enter image description here

That beam stretches all the way through the house, even though there's only a bit of it visible at the ends. Other geometry is similar. When Blender calculates AO for this mesh, any internal geometry is going to be solid black AO, while anything else is not going to reach nearly that darkness. This is a problem because your AO (both during the bake, and when you look it up) is going to be an average of near bits of the mesh. You don't want to be averaging in completely occluded into visible, or you'll have ugly dark smears throughout your AO. I'd strongly recommend removing any internal geometry here.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .