ZBrushCentral

Normal Map Distortion: Zbrush Generating bad normal map

As the title says, ZBrush keeps generating a bad normal map. The piece of geometry is clean, and was made in 3DSMax then imported into ZBrush. This was just a test run to see how the normals were working and with some subdivisions and quick alpha drags.

I used Zbrush to generate UV’s and then used the Multimaper to create a normal map. I’m not sure why but it keeps generating a weird border in the normals. I took it into Marmoset to see how it would actually look on the model and well… it looks exactly like the map shows it would. Weird distortions along the edges and border.

Does anyone know what would be causing this? The distortion was a lot worse, but then i turned on adaptive to get better results, and it’s still there.

Attachments

normalmap_probs2.jpg

The problem is happening again, on a different piece of geometry. It’s very frustrating because i don’t know what the core problem is. Just like the other peice of geometry I made this one in 3DSMax, Imported it into Zbrush, added some subd’s and a quick alpha texture, used UVMaster, then the Multimap exporter. I imported the results into Marmoset and it’s the same problem weird problem.

On this piece i had it in 2 polygroups, but i combined before multimapping. It also had a Geometry> Creased Edge, but i took that off as well prior to multimapping.

Here you can see the low res poly and high res deform (Image 1), The Normal Map (Image 2), Export Settings (Image 3), How it looks in Marmoset with normal map (Images 4,5,6)

pleaseeeeeeeeeeeeeeeeeeeeeeee helppppp
normalmap_probs_moprobs.jpg

Attachments

normalmap_probs2.jpg

Turn off smooth UVs

i took the mesh in my first post back into max and did my own UV’s and then I ran Multimapper again with the following settings:

Tangent ON, Adaptive ON, SmoothUV OFF, SNorms ON.

I seems to have fixed it for the most part, but there is still a weird distortion coming through.

Your original crescent shaped mesh has faceting in the hipoly. That will come through in your normals. You’re going to need to show your workflow a little more detailed, as well as the result you’re looking for.

The faceting is fine, that’s not what bothers me. I can fix the faceting quiet easily, right now i’m mostly trouble by these weird edge distortions that are being generated. I want the normal map geometry to look exactly like the higher res model, with the facets. I do not want these random harsh lines that are being generated along the edges thought.

My process has been the following:

  • Make basemesh in MAX
  • Import mesh into Zbrush
  • Subdivide, add detail, crease edges and add polygroups where needed
  • Use UVMaster
  • Remove polygroups/creases (to prep for Multimapper because i’m not sure if that might be whats causing problems)
  • Use Multimapper with normal map and mesh being exported - Turn ON Adaptive, Tangent & SNorm smooth
  • Import to Marmoset
  • View Results
  • Get frustrated because it generates random distortions

Well, a few things.

  1. I don’t know what you mean by distortions. Are you talking about how edges appear to be pushed in and squished on your thin sections of your mesh?
  2. What tangent space are you using in Marmoset?
  3. Does the same issue happen if you bake in Max, or xNormal and set Marmoset to use the same tangent space?
  4. What happens if you just generate a normal map not using MME?
  5. What does your mesh look like with the default material on inside of Marmoset?
  6. Did you turn off SmoothUVs in the geometry panel as well?
  7. What does your actual UV layout look like? Does it line up at all with the output normal, from what I can tell, it doesn’t, and smoothed UVs in your geo may be your fix.

Personally I don’t use Zbrush to generate any normal map that goes over a surface that isn’t flat. Zbrush uses some tangent space, no clue what. But nothing I am aware of plays very nice with it on anything where you need your tangents to be exact.
Eh, I do all of my baking in xNormal and then tell Marmoset to use the same space so everything plays nice together. My 2 cents.

Also, I could be wrong…but pretty sure you should be using sRGB on your normals, but I could be wrong on that one…it’s late, I don’t remember.

Thanks for the feedback, I gave up on zbrush’s Multimap. Many people were telling me to use MAX’s baking or XNormals. So I used Xnormals and got okay results at first, but it was because my UV’s weren’t set up proper . I believe my UV’s are correct now, but i am still getting a slight distortion where i have a tri in my low poly. Any thoughts on how to fix this?

In the Image I have my UV’s on the left, Normal map on the Right, Mesh with Normal Map in Marmoset.

You shouldn’t have a tri there. Take it out and see how it looks with just quads. It could be the tri is making the tessellation a bit funky.

That doesn’t look like an error from your geometry. It appears to be an error from your UVs not being unwrapped properly on that section. Your UVs should be laid out in a strip along that entire section and you appear to have little spikes doing down for the last polygons in your current strips.

Apply the default checker pattern, or a custom one inside of max, or marmoset and see if those faces don’t map properly.

Okay, so i did every tip i have been given and i am still getting problems.

  • Took my lowpoly Model into Max, Redid UV’S + Smoothing Groups.

  • Exported From Max Directly into XNormals with Texture Cords, Normals and UV’s

  • Baked in XNormals - no cage, no ray calculations (they shouldn’t be necessary), My smooth is set to “use exported normals” on both my high and low poly models.
    -Took Baked Normal Map directly into Marmoset along with low poly

  • My UV’s Look good

  • I have a smoothing group on each UV Island
    Other Than that i dont know what else i can do to make this look right?