Home Technical Talk

Normal Map Shading Issue

What's up guys, was doing some tests on normal map baking on some basic shapes and came across this shading error. The low poly box on the left is a simple soft edges 4 sided box baked in Xnormal, and I'm getting some odd shading on the top and sides, any ideas why? I normally had the UV island as 1 whole and then I broke it into 4 pieces and got the same issue. Is this normally how the box should look or am I missing something?

Replies

  • Bek
  • Jaber
    Thanks for the reply with the normal map wiki thread, I've gone through it before and still don't see why my shading if off
  • Bartalon
    Offline / Send Message
    Bartalon polycounter lvl 12
    90 degree corners (inward and outward) require hard edges, hard edges require UV splits, and UV splits require sufficient space between shells to bake properly.

    Bek's second link covers pretty much everything you'll need to know about the hows and whys of normal mapping.
  • Jaber
    Thanks bartalon, I think the problem may be I didn't have enough space between my UVs and had soft edges, ill give the hard edges and more space between the edges in the UV map a try and see the outcome. I've read that no normal map high poly should be at a 90 degree edge though or the bake will come out like mine, odd shaded, should I give all of my 90 degree angles a slight slope, with objects like my box there in the picture I have or any other strong 90 degree edge object high poly im trying to bake?
  • Bek
    Offline / Send Message
    Bek interpolator
    Not necessarily. The 90 degree thing refers not specifically to the shape the angle makes, but to the poor shading that would come from leaving that large angle a soft edge. The worse your lowpoly smoothing is, the more the normal map has to do to 'fix' it—even when uncompressed the normal maps can struggle to give perfect shading. So, the idea is to get the best lowpoly shading by having hard edges at uv seams, since the vertex splits there won't stack.

    You could have a 90 degree angle with soft edge / no uv seam if you have edge loops to help the surface shading—which brings us to the next thing to consider with uvs/normal maps/lowpoly shading: bevelling.

    Since that 90 degree angle might be inconvenient to have a uv seam running along it, you can use more geometry so it doesn't have to be split.

    And yeah, you should have adequate spacing between uv islands. Search the wiki for 'edge padding'. Also; always* try to straighten your UV islands as much as possible to prevent aliasing (it requires more pixels to make a curved edge in an image than a straight one, pixels are square).
Sign In or Register to comment.