diff --git a/data/debayer.frag b/data/debayer.frag index 4244c2f..0bed108 100644 --- a/data/debayer.frag +++ b/data/debayer.frag @@ -23,12 +23,13 @@ void main() { // Assume BGGR for now. Currently this just takes 3 of the four samples // for each pixel, there's room here to do some better debayering. vec3 color = vec3(samples.w, (samples.y + samples.z) / 2.0, samples.x); + vec3 corrected = color * color_matrix; // Fast SRGB estimate. See https://mimosa-pudica.net/fast-gamma/ - vec3 srgb_color = (vec3(1.138) * inversesqrt(color) - vec3(0.138)) * color; + vec3 srgb_color = (vec3(1.138) * inversesqrt(corrected) - vec3(0.138)) * corrected; // Slow SRGB estimate // vec3 srgb_color = pow(color, vec3(1.0 / 2.2)); - gl_FragColor = vec4(color_matrix * srgb_color, 1); + gl_FragColor = vec4(srgb_color, 1); }