Hey Polycount, having an issue with some of my normal map bakes. I've been getting a lot of gradients in what I presume should be pretty flat surfaces, such as the base of this model, the cover, and the toothed roller section. The normal on the LP doesn't actually look too distorted in Marmoset, but I'm wary of basing all my other maps in DDO off this bake. Below is the LP wireframe, the LP with the normal map, and the HP:
And here is my normal map:
High poly is from zBrush, Low Poly is Blender, all bakes in xNormal. Any thoughts on if the gradient is going to be a problem, and if so, how to rebake to avoid it?
Replies
Generally, gradients are not an issue persay, especially with a synced tangent workflow, but if your workflow isn't synced, you'll get some major issues with an asset like this.
More here: http://www.polycount.com/forum/showthread.php?t=107196
Also when testing for normal map issues, use a highly reflective material, small issues will be a lot more obvious then.
Ideally you should use an engine that has a synced tangent basis but set up your bakes like it's for an engine that has an unsynced tangent basis. You'll still have some room to make mistakes, but your normal map will also still look good under compression and at lower mips.
Geez. Shame.
Thanks for the help everyone, that thread is awesome!
This is an older post. But it seems some things are being said here that I like to verify.
I have been testing several setups baking a normalmap from hi to lo poly using XNormal. I get the best results when using one smoothing group on the lo poly mesh. But this does result in gradients in the normalmap as discussed here.
JedTheKrampus writes that gradients in the normalmap should be avoided though. And I belief I read that somewhere else as well.
But looking here https://docs.unity3d.com/Manual/BestPracticeMakingBelievableVisuals4.html , this is for Unity, it appears that it is actually recommended to use one smoothing group on the lo poly mesh as this will reduce vertex count and it will produce smoother visual results.
I am just new to all this and like to double check this
Is one smoothing group indeed just fine when using this in Unity or should I continue searching for fixes for the artifacts I get when using hard edges on the lo poly mesh?
Gabriette
Being a noob with this I am not entirely sure if I understand everything.
Your example of non-split surfaces at 90 degree like cube, resulting in a gradient that is exactly what I mean.
I get best results when unwrapping to, I guess this is called, one island. Meaning there is only one unwrapped group over vertices / triangles with only a couple of split edges. So the results in Unity will be an almost equal number of vertices in the final Unity Mesh, for a box without bottom, only 4 split edges on the sides.
But you continue with "To get rid of it you have to add extra supporting edge loops next to that edge" which is exactly why I am asking this question. Do you mean add an extra strip of triangles to ease the angle? Where does the link mention this?
It sounds as if ideally this type of gradients in the normalmap should be avoided? Is it wrong practise not to do that, have less vertices and keep the gradients in the normalmap?
So that extra loop is recommended also for example for a long non straight wall? Adding that extra loop will result in significantly more vertices / tris, but still that is preferred above those gradients in the normalmap when no extra loop is used?
Thank you so much for taking the time to help. I have a better idea now what to do.
Generally speaking, if you're going to be close enough to notice the artefacts caused by hardening a 90 degree edge you're close enough to need geometry to represent the bevel across it