diff --git a/src/backend/gl/shaders.c b/src/backend/gl/shaders.c index 90f636b7..96e385b1 100644 --- a/src/backend/gl/shaders.c +++ b/src/backend/gl/shaders.c @@ -202,7 +202,8 @@ const char dither_glsl[] = GLSL(330, } vec4 dither(vec4 c, vec2 coord) { vec4 residual = mod(c, 1.0 / 255.0); - vec4 dithered = vec4(greaterThan(residual, vec4(1e-4))); + residual = min(residual, vec4(1.0 / 255.0) - residual); + vec4 dithered = vec4(greaterThan(residual, vec4(1.0 / 65535.0))); return vec4(c + dithered * bayer(coord) / 255.0); } );