Home Technical Talk

Strange normal map seam.

polycounter lvl 9
Offline / Send Message
tynew polycounter lvl 9
Hello,

I am getting a very strange seam right in the middle of an open face. I used symmetry of the clean half to try and fix the issue, I also deleted the half collapsed the symmetry modifier and welded the verts and I'm still getting the issue.

Anyone know what would be causing it?

zKfk6Xf.jpg

Replies

  • tynew
    Offline / Send Message
    tynew polycounter lvl 9
    That is strange, I seem to get this in marmoset only. Xoulil's viewport shader does not show this error.
  • BARDLER
    Offline / Send Message
    BARDLER polycounter lvl 12
    Flip yo green channel yo
  • cptSwing
    Offline / Send Message
    cptSwing polycounter lvl 11
    I get these in Marmoset2 all the time. Not related to any flipped channels or anything.
  • tynew
    Offline / Send Message
    tynew polycounter lvl 9
    Yeah it wasn't my green channel at all. I fixed it by making those bad faces a single polygon rather then relying on symmetry. Had to redo the WHOLE cage and rebakes just because of it. Surely there must of been a fix for it.
  • .Wiki
    Offline / Send Message
    .Wiki polycounter lvl 8
    Have you checked the UVs of the object? I had it on a recent object that my mirrored geometry UVs got messed up after I imported them back from UVlayout. They were flipped and rotated poly by poly.
  • BARDLER
    Offline / Send Message
    BARDLER polycounter lvl 12
    Hmmmmm. Did you triangulate before you baked?
  • tynew
    Offline / Send Message
    tynew polycounter lvl 9
    @Wiki
    Yes, triple checked the UV's, they were all in place. I think that kind of error you are describing happens after the the normal is baked, applied then the symmetry/mirror is done.

    @Bardler
    Should I be triangulating every time before I bake? :poly122:
  • BARDLER
    Offline / Send Message
    BARDLER polycounter lvl 12
    Yes you always should. If you don't then xnormal could triangulate differently than Marmoset will, which will result in your normal map breaking.
  • Bartalon
    Offline / Send Message
    Bartalon polycounter lvl 12
    In Marmoset did you set the tangent normals to whichever software generated your normal map?

    Tangent.png
  • Mark Dygert
    tynew wrote: »
    Should I be triangulating every time before I bake? :poly122:
    Yes, the reason is that max allows non-visible edges to be flipped any way you want, So when you run symmetry the center seam looks like this: \\//
    But to other applications this means "flip it however they want" which normally defaults to one direction, like this: ////

    When the tri-stripping doesn't match, you get seams.

    They assume since it isn't a forced edge you don't care and it doesn't matter. Some apps like Maya always force hidden tris to strip one way, which becomes a big pain in the ass when you want something perfectly symmetrical, like joints for example. When everything strips from left to right it doesn't fold the same way. Often mirrored bits in Maya have to be forced to strip another way so they work like they do on the original side, which destroys loops and rings.

    3dsmax lets you flip them anyway you want, but then other applications reinterpret max's hidden edges, leading to seams, unless you triangulate.
  • EarthQuake
    cptSwing wrote: »
    I get these in Marmoset2 all the time. Not related to any flipped channels or anything.

    Really? That's a new one for us I think. Could you please outline your process (what app are you baking in, what file format and settings are you exporting, what tangent space do you selected in TB2, etc). Also a sample mesh+map that shows this issue would be helpful.

    If you could post it in the official thread http://www.polycount.com/forum/showthread.php?t=128766&page=21, or just send me a PM that would be great well in case I miss your response here.
  • EarthQuake
    Generally, for best results from Max-> Toolbag 2:
    1. Triangulate before export, TB2 may triangulate quads in a different direction than max (or any other app), which will result in X shaped smoothing errors
    2. For OBJs, Make sure "export normals" is on, "export smoothing groups" is not enough as SGs are a max specific thing that other apps don't really read. Try toggling the optimize settings as well if you still have issues with OBJ.
    3. If you're using FBX and getting errors, try OBJ, and vice versa
    4. Select the Max tangent space in the per-mesh options (you can set your default tangent space to Max as well and all meshes will come in with max). With the Max TS, you don't need to flip your green as the TS accounts for it.
    5.
  • slosh
    Offline / Send Message
    slosh hero character
    I actually had this problem recently and this is what i did. the area with the problem was a mirrored piece that had a shell on top of a shell. in marmoset 1, i would just bake with one mirrored shell moved over 1 unit in the UVs but the actually mesh i imported into marmoset had the overlaying shells...this worked fine. in marmoset 2, this caused that issue that you are having...strange lines on my mesh where there were no UVs or anything. so i basically took the mesh that i use in marmoset 2 and moved the shell over 1 unit and it worked. i'm not sure but i think i also made sure the shell that I didnt move was the one oriented in the correct direction as well.
  • EarthQuake
    slosh wrote: »
    I actually had this problem recently and this is what i did. the area with the problem was a mirrored piece that had a shell on top of a shell. in marmoset 1, i would just bake with one mirrored shell moved over 1 unit in the UVs but the actually mesh i imported into marmoset had the overlaying shells...this worked fine. in marmoset 2, this caused that issue that you are having...strange lines on my mesh where there were no UVs or anything. so i basically took the mesh that i use in marmoset 2 and moved the shell over 1 unit and it worked. i'm not sure but i think i also made sure the shell that I didnt move was the one oriented in the correct direction as well.

    This is interesting as it's basically the opposite of what I've seen.

    In TB1, you would need to offset your mirrored uvs or get strange seams/polygonal lines.

    In TB2 this was fixed along with a few other uvs improvements (as far as I know, I don't have the issue on any of my meshes anymore), so you shouldn't need to offset overlapping uvs anymore.

    So yeah, if you guys can get me some example content where this happens in TB2 so we can debug it that would be awesome.

    I wonder if it has something to do with max's symmetry modifier, have you tried to collapse your stack and reset xform before exporting?
  • tynew
    Offline / Send Message
    tynew polycounter lvl 9
    Thanks for the info guys, I didn't know it was best to triangulate before baking. Is this just for baking/cage only? Can we still apply that baked normal map to an un-triangulated mesh?
  • EarthQuake
    tynew wrote: »
    Thanks for the info guys, I didn't know it was best to triangulate before baking. Is this just for baking/cage only? Can we still apply that baked normal map to an un-triangulated mesh?

    It really depends on what you are doing. Its important to understand the problem first and then you'll be able to answer yourself.

    The problem is that various programs may triangulate differently. So when you export your quad mesh to a model viewer, or a game engine, or another 3d app, when it loads your file it the triangulation may change, which will result in smoothing errors.
  • cptSwing
    Offline / Send Message
    cptSwing polycounter lvl 11
    Hey EQ, next time it pops up I'll send you a complete writeup of that assets's workflow (we're using TB2 a lot at work right now so that could be quite soon).

    My basic workflow is usually modeling in Max, baking in xNormal (triangulated meshes via SBM), export identically triangulated mesh (via the Turn To Mesh modifier) as FBX to Toolbag2 and set Tangentspace to xN/Mikk. And yeah those shading edges occur where there's no UV- or Tri edge or anything. Not sure if it's to do with stacked shells, I'll check for that.
  • EarthQuake
    cptSwing wrote: »
    Hey EQ, next time it pops up I'll send you a complete writeup of that assets's workflow (we're using TB2 a lot at work right now so that could be quite soon).

    My basic workflow is usually modeling in Max, baking in xNormal (triangulated meshes via SBM), export identically triangulated mesh (via the Turn To Mesh modifier) as FBX to Toolbag2 and set Tangentspace to xN/Mikk. And yeah those shading edges occur where there's no UV- or Tri edge or anything. Not sure if it's to do with stacked shells, I'll check for that.

    Great, yeah if you can provide repro steps and a test asset (even if its a simple cube or something, I understand NDAs etc) that would be very helpful. Thanks!
Sign In or Register to comment.