Author Topic: Strange shadowing on Normal bake  (Read 433 times)

Hopefully this is the correct area to be posting this and someone is able to help me. I've posted this problem on another forum a few days ago, but I haven't heard anything back and the production of my project has ground to a halt until I can get it resolved. With 50 assets, I'm unwilling to go further in case there is a problem with how I've done my meshes and I need to redo them.

I've spent the last two months working on my first big project - modelling, UV mapping and texturing my assets to later import into Poser and Daz Studio. I am new to content creation so I am still ironing out the process of my pipeline and learning a lot on the way. I'm currently trying to texture my first batch of assets and I have encountered a strange issue in Substance Painter when I bake my Normal map from my high poly model. Cycling through the maps in the Substance viewport, I have isolated that the Normal map is the culprit.

There is strange shadowing on the edges of the bricks where they neighbour on to another brick. The outer edges on the outside bricks are uneffected.

I created the base mesh in Zbrush (where I am more comfortable at the moment) and then exported the finalised Array into Blender (where I am less comfortable) to UV map and set the Material zones. I have divided the bricks up into 10 zones, so I can generate some variation in  he appearance of the bricks and also avoid lower resolution textures by having all the bricks packed onto the same UV. (As I mentioned, I am still ironing out the kinks in my pipeline, but I'm erring on the side of caution by giving myself more resolution than I think I'll need in Poser and Daz Studio.)

The UV islands on each texture set are neatly packed and there are no overlapping islands, stretching or any errors.

I have tried adjusting the settings on the Bake screen, the Max Frontal Distance and Max Rear Distance, Match and By Mesh Name on the Match setting, and for Antialiasing I have gone through the default to 2x2, 4x4a and 8x8. I have also tried different combinations with the Import dialogue box, but to no avail.

Since I am a new Substance user (this is only my second asset to texture and the first was no problem at all) I don't know what else I can try with the settings on the bake, what is causing the artifacts, if there is a problem with my meshes or if it is a setting I am overlooking in Substance.

Any help would be greatly appreciated.

My first instinct is to say check the margin on your UV map, just wonder if you are getting bleed-over.

Thank you for your speedy reply! :D

How would I go about checking the margin on the UV map?

Where these artifacts are, they aren't in the seam area as the seams. I've attached a screencapture of an example of how the islands are laid out, and where the seams are located on the mesh. My 10 groups are all the same, with perhaps some minor differences in the positioning of the islands.

My high poly mesh is also the same as my low poly. I have done my UV's on a low poly mesh and then I take it back to Zbrush and increase the subdivision levels using Dynamic SubD, so I can soften the corners, then I take the mesh back to Blender to apply the Material zones and double check my UVs. Moving between Blender and Zbrush, Zbrush strips out the names of my Material Zones, so I do that last.

Moving between the two programs, my UVs don't change, merely get updated with the higher resolution as expected.

I would try lowering your max distance values
your model looks pretty large, and the distance value is relative to the bounding box of the model
Last Edit: April 27, 2019, 03:44:36 pm

I wouldn't know where to begin to tell you the dimensions of my model, as I didn't use any specific measurements or scaling system. I instead used my Daz Victoria 4 figure as the scale, building everything I need when compared to her, making sure my objects are the correct proportions when I bring them across to Poser. I find it the easiest and most efficient way of working. :)

Thank you so much for the suggestion of lowering the distance values! I lowered both to zero and bumped the Antialiasing up to 8x8 and this is the result. There seems to be some minor shading on the edges of the bricks, but it's not visible on the Normal map.

I've just let out a massive sigh of relief!! I was worried that it was going to be something with my models and I would have to do something drastic with the meshes. I was hoping it would be something simple like a setting to change, but I don't know enough about Substance and for the most part I'm leaving the setting at their default, unless tutorials I've seen have changed them and explained why to change them. (I need to watch more tuts!)

I have a couple of other Substance projects that are doing the same shadowing thing, so I will try changing the max distance value as well. Thank you, Michael! :D

Working on no sleep is never a good thing.

On closer inspection today I noticed my Normal maps did not bake correctly and they had the black thumbnail. Adjusting the max distance values to .002 allowed the Normal maps to bake correctly, but also avoiding the ugly artifacts.

I have another scene with wooden planks that were having the same issue, but I needed to lower the max distances to .001 on that bake. This is definitely something I'll need to keep in mind and change the max distance as needed, as obviously each of my assets will be different.

Thanks again for the suggestions and help on this! I'm very happy to have it resolved so I can now get back on track and finish this beast of a project!

when I wrote "lowering the distance value", I didn´t mean them to be set to 0. But it seems, that you have found better values than 0 anyway :)

regarding scaling:
just imagine, you have a bounding box around your model, and the distance value is relative to that bounding box.
In my experience, with Substance Bakers, 99% of baking issues can be fixed by adjusting these distance values.

Heh! I was just a bit too literal with dropping the values down to 0, but it worked out for the best. It was likely the most efficient way of finding the "happy zone" on these models by starting at 0 and working my way up, rather than gradually coming down from the default value considering how low these values are.

Thank you for elaborating on the scaling and the bounding box. I'm familiar with the "invisible bounding box" principle, as Zbrush's Unify function does something similar, scaling the model down to fit inside a bounding box the same size as the default cube.

In my inexperience, I knew the problem was either something I was doing (or not doing) or an issue with my models. Being my first project of this nature and working across multiple programs, it makes it very challenging to know where to begin narrowing down what's gone wrong. Is it a problem in Substance, or is it a more technical problem on my mesh, a setting not changed or a step overlooked in the UV/material process?

I'm hugely relieved that it was something very simple in Substance and my models aren't the culprits. I don't have to go back into Zbrush or Blender to redo something! :D