Move deband to end of tonemapping.
This avoids artifacts when using adjustments and color correction
This commit is contained in:
parent
f74491fdee
commit
fe69fedc1a
@ -462,12 +462,6 @@ void main() {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (params.use_debanding) {
|
|
||||||
// For best results, debanding should be done before tonemapping.
|
|
||||||
// Otherwise, we're adding noise to an already-quantized image.
|
|
||||||
color.rgb += screen_space_dither(gl_FragCoord.xy);
|
|
||||||
}
|
|
||||||
|
|
||||||
color.rgb = apply_tonemapping(color.rgb, params.white);
|
color.rgb = apply_tonemapping(color.rgb, params.white);
|
||||||
|
|
||||||
color.rgb = linear_to_srgb(color.rgb); // regular linear -> SRGB conversion
|
color.rgb = linear_to_srgb(color.rgb); // regular linear -> SRGB conversion
|
||||||
@ -498,5 +492,11 @@ void main() {
|
|||||||
color.rgb = apply_color_correction(color.rgb);
|
color.rgb = apply_color_correction(color.rgb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (params.use_debanding) {
|
||||||
|
// Debanding should be done at the end of tonemapping, but before writing to the LDR buffer.
|
||||||
|
// Otherwise, we're adding noise to an already-quantized image.
|
||||||
|
color.rgb += screen_space_dither(gl_FragCoord.xy);
|
||||||
|
}
|
||||||
|
|
||||||
frag_color = color;
|
frag_color = color;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user