Home Technical Talk

Gradients showing on model normals

polycounter lvl 5
Offline / Send Message
Pegbird polycounter lvl 5
Would really appreciate some insight on this.

I'm having an issue with harsh gradients appearing on my normal map.

There is nothing obviously wrong with the normal map, the gradients in the map itself are practically invisible but something is not quite adding up it seems.


Normals baked in Maya.
Rendered in Marmoset 2.


rSghIDF.png

Here are the wires

sJH8CA5.png

4iovKgx.png

Replies

  • cptSwing
    Options
    Offline / Send Message
    cptSwing polycounter lvl 11
    Try baking a 16bit normal map, that kind of banding can be quite common at lower bitrates.
    If you need to go down, converting back to 8bit in Photoshop may give you better results than straight baking to 8bit.
  • Pegbird
    Options
    Offline / Send Message
    Pegbird polycounter lvl 5
    Hmm it seems that isn't even possible in Maya. I tried the .EXR format and it looked the same/possibly worse although I'm pretty sure it was still 8-bit for whatever reason.

    I didn't even notice it using the standard blinn in Maya, it was only when I started increasing the specularity in Marmoset that it became apparent.

    My current strategy is to pretend its not there / cry. All further input appreciated.
  • BARDLER
    Options
    Offline / Send Message
    BARDLER polycounter lvl 12
    xnormal will let you bake a 16bit normal map if you use the .tiff format. Make sure your tangent basis in Marmoset 2 is set to Maya to make sure they are synced up. This type of banding isn't the end of the world because once you texture it, it won't be noticeable anymore.
  • EarthQuake
    Options
    Offline / Send Message
    Yeah this is a bit depth precision issue, 16bit should help. This happens when your highpoly model is very close to the lowpoly model, so the "difference" that is baked into the normal map is super subtle, with an 8bpc image you just don't have the range to represent these values. In maya you'll get banding like this, in max you'll get noise (as it dithers), I like the max result a little better but its not something you get can away from unless you use 16 or 32 bit maps.
  • Pegbird
    Options
    Offline / Send Message
    Pegbird polycounter lvl 5
    Thank you for the help guys.

    I tried Xnormal for a while and really disliked having to leave the 3D package to bake for several reasons. Yeah I'm hoping the noise/detail in the gloss and diffuse maps will help disguise it. The image resampling out of Marmoset might help slightly too.

    I'm using an 8-bit workflow where I have Diffuse/Spec/Normals/Gloss as groups in a single PSD. To work with a 16 or 32=bit normal map I suppose it would have to have its own PSD, or is there a convenient hack to jump from 8-bit to 16/32 and possibly minimise banding?
  • BARDLER
    Options
    Offline / Send Message
    BARDLER polycounter lvl 12
    Pegbird wrote: »
    Thank you for the help guys.

    I tried Xnormal for a while and really disliked having to leave the 3D package to bake for several reasons. Yeah I'm hoping the noise/detail in the gloss and diffuse maps will help disguise it. The image resampling out of Marmoset might help slightly too.

    I'm using an 8-bit workflow where I have Diffuse/Spec/Normals/Gloss as groups in a single PSD. To work with a 16 or 32=bit normal map I suppose it would have to have its own PSD, or is there a convenient hack to jump from 8-bit to 16/32 and possibly minimise banding?

    You will still load an 8bit tga into marmoset, but you will get better results by dithering a 16bit image down to an 8bit image, compared to just baking an 8bit image. Andy Davies talks about it here [ame="http://www.youtube.com/watch?v=OONQzKcWeMY&feature=share&t=9m30s"]Andy Davies - Normal mapping for games & realtime content - YouTube[/ame]
  • EarthQuake
    Options
    Offline / Send Message
    Pegbird wrote: »
    Thank you for the help guys.

    I tried Xnormal for a while and really disliked having to leave the 3D package to bake for several reasons. Yeah I'm hoping the noise/detail in the gloss and diffuse maps will help disguise it. The image resampling out of Marmoset might help slightly too.

    I'm using an 8-bit workflow where I have Diffuse/Spec/Normals/Gloss as groups in a single PSD. To work with a 16 or 32=bit normal map I suppose it would have to have its own PSD, or is there a convenient hack to jump from 8-bit to 16/32 and possibly minimise banding?

    You can work in 16 bit mode the same as you can with 8 bit mode, at least in recent versions of PS, there may be some limitations but it should be fine. 32 bit on the other hand you can only do very basic operations in PS.
  • Pegbird
    Options
    Offline / Send Message
    Pegbird polycounter lvl 5
    Thankyou for linking the Andy Davies video, I'm watching it now and he is talking about a few things I hadn't understood / considered.

    Hmm it might be time to revise my workflow and use Xnormal for normal bakes. Typically I do the "explode" technique for baking complex meshes and I found getting a multi-component mesh in and out of xnormal a bit of a pain last time I tried. It's very likely I wasn't going about it efficiently though.
Sign In or Register to comment.