Hard-edged polygons with normal maps

Loading...

Hard-edged polygons with normal maps

Background
I'm making a character for my game (with MakeHuman), and I wanted to add normal maps to the characters. I generated one low-poly character and then one high-poly using a bunch of Subsurf modifiers. I was able to use the new Cycles baking to bake normal maps mapping the low-poly object to the high-poly object.
Problem
I'm getting some odd artifacts and very hard-edged polygons when I'm applying them to the character, even with the character set to being completely "Smooth-shaded". Can anyone explain why this is happening and how to fix it?
(left) low-poly model, (right) high-poly model

(left)low-poly without normal map, (right) low-poly with normal map produces weird shading

EDIT: Here is the normal map I am using for the low-poly character that is causing the hard-edged polygons (32px margin):

Also, here is my node layout (using Cycles):

Solutions/Answers:

Answer 1:

Sorry for any trouble, but I was able to find the answer in one of the Blender docs. The real culprit was the Image Texture I was using for body_normals.png:

(emphasisis added by me)
Generate a perturbed normal from an RGB normal map image. This is usually chained with an Image Texture node in the color input, to specify the normal map image. For tangent space normal maps, the UV coordinates for the image must match, and the image texture should be set to Non-Color mode to give correct results.

I guess I must have skipped over this part in this project. Switching to Non-Color data in the Image Texture fixed my problem :). Now there is are no hard-edged polygon shading weirdness anymore.

Answer 2:

It looks as if the uv-unwrapping could be causing it can you post a screenshot of your uv-map on top of the normal map.
What could be happening is that your uv-map overlay does not match perfectly with your normal-map and some of the UVs cross the boundaries creating a very drastic change in the normals.
Check that your UVs match the normal map precisely.
(Also on your normal map – make sure the separate artifacts don’t overlap and have some offset between them…)

Answer 3:

if you have a very low poly mesh you can get a self shadowing problems .. this is common raytracing problem .. I am not sure but I strongly believe cycles do not use any special polygon representation. You have to rise the polycount. Also normal maps produces some other bunch of artifacts especially on strong normal maps with glossy shaders .. Normals (and normal maps) are just a fake shading trick to make polygons looks smooth, there aren’t any real geometry bumps and sometimes these perturbed normals are pointing away from the view and you should not be able to see that point technically leading into shading problems .. like missing highlights. Normal maps are good only to add very fine details.

References

Loading...