Home Technical Talk

Normal Map baking issue

Hi, ive recently been working on a character for my university course but i have hit a brick wall with regards to normal map baking. This is the error:
unled1nv.jpg
Not good, anyways im new to this so i wasnt sure how to fix it. What i have tried, is re unwrapping, reseting the normals, flipping the channels, baking in max and zbrush instead of xnormal, there are no flipped or overlapping UVs. In xnormal ive calculated the raycasts, creating a cage, rendering to world normal instead of tangent, pretty much everything i can think of. The work flow i have used is zbrush sculpt from zspheres->retopo in zbrush->uvw in max->bake in xnormal. Incase the UVW unwrap is the problem ill post a picture, ive not packed it perfectly but that shud not matter.
unled2oua.jpg
I have also tried viewing the model with normals in different software such as UDK and xNormals 3d model viewer, while it doesnt work in UDK in xnormal there are no normal map errors (except for some raycasting but thats not whats causing the seams) which makes it even more confusing
unled3w.jpg
Very confused on what is the problem, though i think it has something to do with the way the tangents are calculating the normals. I would love to know what ive done wrong since i have a few other characters ill will have to bake in the next few months. Thank in advance =)

Replies

  • SpeCter
    Offline / Send Message
    SpeCter polycounter lvl 14
    That´s caused by different tangent bases and or flipped green channel.
  • Gufufawug
    I have flipped the green channel but this still happens, would it be possible to explain what you mean by different tangent bases?
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    The best solution is to bake it in Max. xNormal has a different tangent basis currently then Max or any other program, so you will always get seams when displayed. The only program void of seams from xNormal is Blender, and Marmoset matches up around 80-90% pending on how you work your Normals (but even then, it's very flimsy).

    -Flip the green channel.
    -Make sure in Max you use Normal Bump in the Bump Map slot.
    -Before baking anything, always reset Xform.
    -If the problem persist, restart Max. There are some cases in Max 2012, in which it will keep in memory the 'old' Normal Map, showing it with seams and what not, even if you flip the green channel.

    Hope that helps, and for UDK, I suggest this method:
    http://www.3dmotive.com/exportingqualifiednormals/
  • Gufufawug
    Thanks ace, i have baked in max and this error still occurs, could this be because the viewport setup. I hadnt reset xform so i tried that and rebaking and its still happening, ive tried using earlier versions of max just incase its 2012 and im thinking of trying maya though i hardly see this making any difference. For reference heres my normal map baked from max.
    testnormals.jpg
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    Hmm, do you have Gamma enable in Max?
    Customize > Preference > Gamma/LUT.

    Also, are you using real-time shaders (AKA, you see the stuff in the viewport) or offline renders (scanline, mental-ray, etc?)
  • Gufufawug
    I have gamma enabled and im using the direct3d realtime shader since i dont like nitrous.
  • Next
    Offline / Send Message
    Next polycounter lvl 12
    mhh maybe try this:

    Turn on xview in max and check for flipped uv shells. This could be the issue u get in udk to me it looks like that.
    EDIT: i should read more carefully u said there arnt any sry!

    One of the best ways to do it imo is to bake in xnormal cuz its just a fancy tool ! xD
    joke aside.. when baking in xnormal use its format(out of my head i think it is .sml or something like that...) for exporting your lowpoly there u can check the lowpoly preset which will export the model with the tangent basis it has in max. therefore it will have some strange issues in marmoset but it will be fine in max (i can only speak for 2011 there...) and in udk too...at least this works for me.

    hope this was useful, keep us updated!
    cheers
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    Gufufawug: Disable Gamma and try instead using X-shader:
    http://xoliulshader.com/download

    Next: Are you sure SBM still works? I remember that the tanget importer for xNormal was broken and needed a rewrite, and I don't ever recall being able to export my cage properly from Max to xNormal through the SBM system, unless I missed something?
  • Next
    Offline / Send Message
    Next polycounter lvl 12
    to export the cage u need to use an editable mesh with an projection modifier in max for export. not an editable poly then this should work.
  • Gufufawug
    Hey, ive tried xoliul shader, same thing and i just gave SBM a go but it just gives me the same problems. I set it up in UDK and inverted the green and its still the same. Half thinking that somewhere along the line my model broke. There are no flipped or overlapping UVs as well
  • Next
    Offline / Send Message
    Next polycounter lvl 12
    mhh best thing to do in that case start from scratch with a simple turbosmoothed cube ,bake it and look if u get this working...if that worked try to fix the model. but i dont think it is broken as it looks alright in xnormals viewer though...
    and the errors look to strong for just being the wrong tangent basis ...


    EDIT: this maybe sounds stupid but by looking closely at your first screen shot and the normalmap it really seems like the shells causing the errors are slightly lighter then they should be compared to the others even with their shading being diffrent. or is this just me and my crapy monitor...?
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    Next wrote: »
    to export the cage u need to use an editable mesh with an projection modifier in max for export. not an editable poly then this should work.

    Ah, cruds! That explains it! Thanks, will look into it.
  • Gufufawug
    Next wrote: »
    mhh best thing to do in that case start from scratch with a simple turbosmoothed cube ,bake it and look if u get this working...if that worked try to fix the model. but i dont think it is broken as it looks alright in xnormals viewer though...
    and the errors look to strong for just being the wrong tangent basis ...

    Model is def not broken just gave the box thing ago. I am beginning to think it may be be an error in the high poly if thats at all possible. Im going give baking something else ago *ie a box with an indent, just to see if its a problem with this model in particular or something else. Beginning to run out of ideas tbh
  • pabgo
    been having this problem for a while just been too lazy to post

    xolilul shader
    this is what happenes when i flip the green channel

    53457467.jpg

    unledvpr.jpg
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    If you guys are able to, Flip the green channel directly from the bake or in Photoshop, since in cases of shaders, they break sometimes (especially for Max), although I'm sure you guys tried that.

    Also, I just had this problem yesterday. I simply put an Reset Xform on my mesh, shut down Max and opened the scene again and it had corrected itself.

    I honestly have no idea other ideas about the issue. The only other thing which comes to mind for the issue, is it usually occurs when you have fancy shaders on your low-mesh and you bake with that shader enabled and it having access to your Normal map, meaning you are displaying your Normal Map while baking your Normal map if that makes any sense, it kinda leaks in Max's memory, making your Normal maps appear half baked or with such issues.

    This is especially a very well known issue in Max 2012. In 2011, Max auto-updated or warned you about broken textures correctly, while in Max 2012, it will still show the textures as enabled, even at different PC's, without access to the textures.

    I suggest merging your current scene into a new scene, apply a simply material to your lowpoly, and bake your high poly from there, and once the baking is done, load up X-shader into another slot and see if the problem persists.
  • Noors
    Offline / Send Message
    Noors greentooth
    reset xform + edit normals>reset, all the time ever.
  • Gufufawug
    Fixed the issue, still doesnt make any sense to me but here is how i fixed it. Added edit normals to the modifer stack, reset the normals and then left it in the stack (instead of collapsing) I then done the usual normal render in max and it worked. Silly error but thats whats causing it
Sign In or Register to comment.