I have some serious issues with normal map baking. No matter what I tried the baked normal maps always contain some artifacts and odd normal distortions. It is impossible to bake out a clean normal map.
In Blender version 2.62 however, all looks as supposed to be. No problems at all. File and images to illustrate that problem are attached. Please try it for yourself to see what I mean.
I want also to note that sometimes the a whole chunk of faces appear just grey in the normal map. Not even in purple. You can see that in the file Cube.blend if you bake it out.
My system is:
Mac OSX 10.8.2
NVIDIA GeForce GT 650M 1024 MB
I using the last official version of Blender 2.64
Closed, ResolvedPublicNormal Map Baking Issue Blender 2.64
- Assigned To
- Brecht Van Lommel (brecht)
- David Hattori (nipoco)
- David Hattori (nipoco), Morten Mikkelsen (mmikkelsen), Tobias Oelgarte (niabot) and 2 others
Unfortunately the bias value does not solve that problem. I've already tried several values in the baking tab and non of these worked.
And if you try the blend with the very exact values, you will see that it works perfectly fine with Blender versions before 2.63. I can only guess since I'm not a developer. But I think it is caused by the new mesh system in Blender (bmesh).
The artifacts are not average alias problems. More like wrong calculated faces, showing weird normals in the normal map, that break even surfaces. If that makes sense.
Morten, it seems this is an issue that happens with mikktspace. In 2.62 there is a bug where it's not actually using the tangent space in this case, but now that it's used properly this problem shows up. I guess you can comment if these are technically wrong or not, maybe the discontinuities are a feature.
But in the case of the cube it's particularly bad where one of the faces renders completely grey, because the tangents cancel out.
Well first off no doubt the result doesn't look good. However, it is not really clear to me what the issue is here (yet).
It doesn't look like a tangent space issue to me though but I am still at work and haven't dived into this yet.
What do you mean that it wasn't using mikktspace in this case? In what case exactly?
Also when you, david, say the faces point in the wrong direction do you mean all the normals are inward?
To me an obvious candidate for a culprit here would seem like something related to the bmesh integration gone wrong?
But again I haven't investigated yet but it seems more likely to me as a quick response :)
to me it looks like since the bmesh integration the face data is now being fed incorrectly to the tangent space calculation which breaks it and causes discontinuities.
As far as I know mikktspace was used exclusively under 2.62. I am certain it's a bmesh integration error.
yes the normals pointing inwards. That's what I meant. However, flipping the direction does not solve the problem.
It was my guess too, that it has something to do with the bmesh integration. I'm just a simple Blender user who doesn't understand Blender's code at all, but it seems obvious, because these issues appear since 2.63
Thanks for investigating that problem!