blur: add noise in perceptual space
The previous implementation added noise in linear space, which resulted in the effect becoming more pronounced on black backgrounds. This patch changes the process to be applied in perceptual space, by making the noise addition pass a separate draw call and disabling GL_FRAMEBUFFER_SRGB during that. After this change, noise will look much more suppressed and almost never grainy. This change also changes the range of the noise from [-strength..strength) to [0..strength), as blending can only be either additive or subtractive. As a result, users might need to ramp up their noise parameter after this change. v2: Add more explanation around the draw call. v3: Fix noise not fading out with the fade out effect. v4: Restore an accidentally removed comment. v5: Add CCBUG. v6: Rebase. v7: Fix a formatting issue. CCBUG: 409620
parent
0a2c5114
Please register or sign in to comment