Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

3DS Max Normals

Discussion in 'Formats & External Tools' started by Chubbydan, Nov 21, 2014.

  1. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi everyone,

    Please excuse if this is recurrent but I have checked various places and have yet to find a solution that works. The problem is;

    Using 3ds max 2013/15 with zbrush to generate models.

    Using FBX & OBJ formats to transfer into Unity and everytime there will be a seam showing up in the normal map as the image below illustrates;



    I've tried the following solutions;

    - Xnormal with Unity Tangent Calculator
    - Zbrush baking with various settings including flipped G etc.
    - Handplane tool
    - Various settings in Unity with mip mapping, FBX smoothing and tangent settings.

    Any advice would be greatly appreciated.

    Cheers,
     
  2. PROTOFACTOR_Inc

    PROTOFACTOR_Inc

    Joined:
    Nov 15, 2009
    Posts:
    4,029
    did you try to flip the green channel manually in photoshop?
     
  3. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi rosor,

    I havent flipped the green channel in photoshop but i will try just to tick it off, at this point ill try anything. Flipping the green channel in photoshop i believe would be the same as exporting from zbrush with g flipped or without flipping which I have tried, along with positive and negative Y tangent settings in xnormal. The better results are without flipping g in zbrush and with positive Y in xnormal as from what i've read this matches what Unity uses but there still exists the seam.
     
  4. PROTOFACTOR_Inc

    PROTOFACTOR_Inc

    Joined:
    Nov 15, 2009
    Posts:
    4,029
    I had some weird issues with topogun baking normals. Once imported in 3Ds max it was showing some crazy seams, even flipping the green in there didn't help. the normals were kind wrong as well in unity but not as much... I tried to flip the green channel manually in photoshop and it solved this issue, at least in unity... who knows why...
     
  5. Ness

    Ness

    Joined:
    Oct 1, 2012
    Posts:
    182
    Try using padding when baking normal map, if that wont help use this(with padding) to create it:
    http://www.handplane3d.com/
    Edit: and make sure there a place for padding in the uv layout
     
    Last edited: Nov 22, 2014
  6. N1warhead

    N1warhead

    Joined:
    Mar 12, 2014
    Posts:
    3,884
    You need to unwrap it properly, otherwise you a place where you don mind a seam showing (E.G. - The bottom) and start the seams there.

    You're problem from my prospective is, the colors aren't matching correctly so it's not able to give up a *Tiled* effect.
    However if you use a dark texture with your normal maps, it may hide the seam for the most part.
     
  7. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi Ness,
    Thanks for the reply, i've checked the padding along with mip map settings and handplane. The image linked in the first post is still the best result i've managed to achieve.

    Hi N1warhead,
    Thanks for the reply, i have the problem where there will be no 'good' place to have the seam as all models created will be examined closely and at every angle. The image shows a model with only a normal map applied and it has been my experience in the past with custom engines that normal map seams should not show.

    Still looking for a solution, ill post whatever im able to find.

    cheers
     
  8. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi everyone,

    Still experiencing the seam problem.



    In the image above the material is a bumped spec in Unity, the spec highlighting the big dirty seam.

    The workflow for the image was export OBJ from 3ds max, bake in xnormal, convert map in Handplane3D. This is what's been recommended for the max workflow, can anyone comment on their workflow for getting normals into Unity without a seam? About to try maya just to rule out if it is a my max causing the issue.

    Cheers,
     
    Last edited: Nov 24, 2014
  9. N1warhead

    N1warhead

    Joined:
    Mar 12, 2014
    Posts:
    3,884

    Are the Normals and diffuse using the same UV Map?

    I do all my Normals with ZBrush, and I can use the Low Detail and High Detail on the same UV Map, I never get any seams. In Zbrush there is a Fix Seam button as well or whatever it's called, I've never had to use it though.
     
  10. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi N1warhead,

    I've applied a default diffuse colour so the normals and diffuse are using the same map. In the more recent images I've not applied any diffuse at all so as this cannot be a variable.

    I've asked a colleague to bake from maya just in case with the seams still showing. I've recently applied a blank normal map to the model so that no seams can exist in the map and the seam still shows. I'm not checking my Unity scene setup for any factors that can be causing this.

    The FBX has been setup in various ways as advised over at the polycount forums,

    http://www.polycount.com/forum/showthread.php?p=2193496&posted=1#post2193496

    Cheers,
     
  11. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi everyone,

    An update to the seam issue is that when applying a diffuse shader with no maps plugged in, there is no seam.

    When applying a bumped diffuse with no maps plugged in, there is a seam. This is much more apparent when using the bumped specular shader.

    I've checked the mesh and the vertices are welded, normals are aligned as should be. If there was something wrong with the mesh surely it would show up with diffuse applied.

    A programmer colleague of mine altered the lighting from forward to deferred which does reduce the seam dramatically.


    Any ideas?
     
  12. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
  13. Chubbydan

    Chubbydan

    Joined:
    Nov 21, 2014
    Posts:
    14
    Hi everyone,

    I can confirm this has been a shader issue the whole time.

    Based on advice given over at the polycount thread a programmer colleague of mine created a new shader and now we are seam free.

    Could I request that the admin who moved this thread into external tools please move it back into a more appropriate category.

    So to confirm the base was made in 3ds max. Sculpt in Zbrush. Bake has been performed in xnormal with tangent space set to X,Y and Z all positive. There was no requirement for Unity tangent space plugin and I am about to check if Zbrush can produce the bake.

    Cheers,
     
  14. twiesner

    twiesner

    Joined:
    Oct 4, 2011
    Posts:
    309
    Most normal map generators create normal maps with a "bevel" effect on the edge. Unity's default shaders pick this up and that's what creates the seam. If you generate your normals in zbrush and flip the g channel you should not see the seam. If it still shows up you could just photo edit the seam out of the normal map texture in an image program.

    But yes, from personal artistic experience, Unity's default shaders are not optimal and could still use some improvements.
     
  15. LittleRainGames

    LittleRainGames

    Joined:
    Apr 7, 2016
    Posts:
    97
    Looks to me like your actually zbrush texture, or diffuse material is a different colour at the seam. Try tiling it on a plane and rendering in 3ds max.