Page MenuHome

baking does not apply dithering
Closed, InvalidPublicTO DO


--- Operating System, Graphics card ---
Win7, Nvidia 560

--- Blender version with error, and version that worked ---
2.67, none that I know

--- Short description of error ---

baking does not seem to apply the dithering set for rendering.
I'm guessing that the conversion from float to byte is missing a flag,
as both the RGB and CM values seem to be float precision in the
image viewer, but banding is still visible.

--- Steps for others to reproduce the error (preferably based on attached .blend file) ---
set dithering to 1
unwrap default cube with lightmap pack (i.e.)
bake the default cube to a new float texture
observe there is still banding present

thanks, David.

Event Timeline

This is actually everything works as intended. Baker writes color arrays directly, not actually relying on color management and so. I could see how dither on texture/ao bake could be useful, but it'll be completely harmful for normals and heights maps.
The whole idea of dither is just avoid banding of renders and if you really need dither on textures you'll need to do it in an external postprocess application.
Thanks for the report, but it's not considered a bug.

Sergey Sharybin (sergey) changed the task status from Unknown Status to Unknown Status.May 27 2013, 12:28 PM

...but it'll be completely harmful for normals and heights maps.

Normal map for games with flat smooth surfaces actually benefit more from a well-calculated dither. For example, a low poly sports car with a normal map and well look at the banding issue on the normal map. If it's dithered properly, the result is actually better. Completely harmful for normal map is a problematic statement. Though I agree it is harmful for height maps. Or, a high bit-depth height map doesn't really need dithering anyway.

Update: Would be nice to have dithering for baking, but it's a feature that won't give out any visible value in production.