Pixelated normal maps


I’m trying to bake high poly normal maps onto my low poly objects but for some reason the normal maps keep coming out pixelated. I’m baking 4K textures and have tried shade smooth / shade flat as well and it doesn’t make a difference. These are hard surface objects, not sure what I’m doing wrong but the normal map loses a ton of detail and comes out looking very pixelated and jagged compared to the high poly model

In the screenshot the orange selected object is the low poly with the normal map baked on, to the right of it is the high poly model (I just moved it to the right for comparison). And to the far right is the baked normal map looking all pixelated

Welcome :tada:
you might want to elaborate this… for example i hope you are not using any compression on the map image (or even jpg…)… using a cage ? Maybe the extrusion is too high so the details get lost in the range… ??

Hello !

I’m not an expert at baking, but I’m not sure it’s possible to have anti-aliasing on the bake, for normal maps in some ways it doesn’t makes sense.

By testing quickly I get the same issues :

But adding some bevels and using autosmooth seems to lead to a better result :

Note that while the edges are smoothed , there isn’t any anti-aliasing applied to the image …

Another technique would be to render at 8k or higher, add a very slight blur to the image, and downsize to 4k .
That’s at least quick to do but that will be much less accurate than the proper version with bevels.

Blender’s baking lacks anti-aliasing, it’s a limitation of its old baking system. This means that normal maps can only be baked with 1 sample. Adding more samples won’t improve the quality.

But, like @sozap said, you can bake at a higher resolution and then shrink the image, which will give you a form of manual, basic anti-aliasing. Or you could bake in an other software if you have and know one that can.

Thanks for the clarification !

I was wondering what anti-aliasing / sampling would do to normal vector data, that could be like with Z depth where you shouldn’t use anti-aliasing to get correct values.
But maybe there it’s more forgiving and vector are just averaged with their neighbors without creating artifacts.

I’m glad to know that it’s in fact possible and all that is just a limitation of blender !

Thanks again !

I have a feeling anti-aliasing is not the only problem. Even baking at 8K textures I still lose some detail in the baked normal map. Especially around the circular bolts which look really bad on the bake compared to the high poly model

What software would you recommend that has better baking than Blender?

I might not be the best person to answer that question, as I haven’t tried that many options. I usually just use Blender and plan my meshes so they will bake well (make details a bit more bevelled and rounded so it gets captured easily). If you are looking for a free alternative, I sometimes have used Xnormal in the past. it’s an app made just for baking and it has some options Blender doesn’t have, including multiple types of anti-aliasing. However, it’s an old app with a clunky interface, but it works pretty well if you can understand it.

However, no matter which option you end up using, don’t expect a miracle. Your bolts have fine, sharp details and those never fully capture well into normal maps, even with good anti-aliasing. That’s because normal maps only store angle values and not depth, so sharp corners and vertical walls tend to disappear. When baking a normal map, there should be bevels on all those fine details and the normal map may also need to be supported by an ambient occlusion or cavity map to add back some of the shading that’s lost in the bake.