I've been working on a piggy robot model in Blender for some time, and I'm having some issues texturing in Cycles, specifically with the normal map.
For some reason, Blender inverts half of my normal map on the model, which make the seams that are supposed to go inward are now sticking out (every line on the texture/normal map is supposed to be an indentation, like this, but without the lines being black, if you know what I mean: enter image description here
And this is what happens when I try to apply the normal map: enter image description here
Now I've tried to invert the green(y) and red(x) channel of my normal map in photoshop (with help of the nvidia plugin) but it turns the normal map slightly transparent, so when I use the png in blender, the whole texture becomes much darker (the material should be a glossy plastic material). After that I tried to see if maybe changing the normal map node from 'tangent space' to 'blender object space', and that made the seams work, but also darkened the texture again, like this: enter image description here

I'm kinda lost as to what I'm supposed to do now.

  • $\begingroup$ Are the normals of your model all pointing in the correct direction? $\endgroup$
    – maddin45
    Mar 5 '15 at 13:24
  • $\begingroup$ i thought that would be the problem too, but they are pointing in the right direction. $\endgroup$ Mar 5 '15 at 13:52
  • $\begingroup$ Could you upload your .blend file (i.e. to pasteall.org/blend) so we can check it? Make sure to pack the textures into the file (File->External Data->Pack All Into .blend). $\endgroup$
    – maddin45
    Mar 5 '15 at 14:22
  • $\begingroup$ Node setup please . . . You might be able to invert it in the material itself $\endgroup$
    – VRM
    Mar 5 '15 at 17:09
  • $\begingroup$ @NoviceInDisguise about the nodes, i'll upload an image of it, but it might be a bit cluttered (i followed a tutorial on a material, and it's mixed in with the nodes for the normal map. which might also cause the problem, i don't know) snag.gy/hxyzF.jpg $\endgroup$ Mar 6 '15 at 9:47

The normal map you are using is baked for tangent space. Blender tries to calculate the tangent and binormal vectors from a UV map. The problem here is that along UV seams the tangent direction can change. This is why you get weird shading along the UV seams.

A simple solution is to calculate the normalmap in Object space (use "Object Space", not "Blender Object Space" in the Cycles shader). However this will not work if your object gets deformed, for example by animation bones. Also there still seem to be some artifacs and the normals seem not to be calulated smoothly (see red box below).

enter image description here

Using the displacement texture directly instead of the normal map gives you perfectly smooth shading, so I think you should it instead.

Apart from the texture issues your object also has a bunch of flipped normals: inside the nostrils, the eye sockets and inside the holes where the ears are attatched to the head.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.