Author Topic: Strange normal map artifacts  (Read 1743 times)

I have textured a couple of objects in Painter and exported the textures. The objects will be rendered in XSI/ Redshift, and now a co-worker told me about strange normal map artifacts that I did not notice before. They are not visible in Painter.

I checked the textures in Modos native renderer and Vray, the artifacts are visible there also.

What is causing those artifacts? Normal texture should be completely smooth, but there is some kind of stepping visible.

EDIT:

Exporting the normal map in 16bit seems to solve the problem. Should this be the case? I'm pretty sure I have always exported normal maps in 8bit in the past.

EDIT 2:

I have noticed that in Vray the 16bit normal map only limits/ lessens the effect. Artifacts are only visible in GPU CUDA mode though, when using the CPU renderer there are no artifacts visible. Strange. Seems to be a problem with GPU rendering, not the maps themselves.

Any idea how to remove those artifacts for Redshift (GPU only)?
Last Edit: March 13, 2018, 12:37:35 pm

Quote
What is causing those artifacts?
Quantization. Please see http://polycount.com/discussion/148303/of-bit-depths-banding-and-normal-maps

Quote
Exporting the normal map in 16bit seems to solve the problem. Should this be the case?
Yes.
Another possible solution is dithering, which is currently available in Designer (automatically, when exporting 16bpc textures to a file format which can handle at most 8bpc like tga) but not yet in Painter.

Quote
I have noticed that in Vray the 16bit normal map only limits/ lessens the effect. Artifacts are only visible in GPU CUDA mode though,
It is possible that that renderer quantizes down the normal to 8bpc, or in floating point 16bpc (it more or less amounts to quantizing to 11bpc in that case, which would explain why importing a 16bpc textures improves the situation a bit over importing an 8bpc texture, but does not solve the problem completely).

Quote
Any idea how to remove those artifacts for Redshift (GPU only)?
If importing a 16bpc normal does not solve the problem, then dithering is generally the only option. You can either use Designer for that or an other 3rd party image editor / converter (e.g. Photoshop).
Last Edit: March 13, 2018, 02:46:46 pm