From 7d0d693ca7a4f07f94dbd66a1b22ddf29bd61c49 Mon Sep 17 00:00:00 2001 From: Yuxuan Shui Date: Fri, 11 Nov 2022 15:51:11 +0000 Subject: [PATCH] backend: gl: fix shadow from mask The intermediate texture used for shadow from mask calculation did not properly set the min/mag filter to linear, which is required by the blur methods. Because they use texture interpolation to accelerate the convolution calculation. Fixes #916 Signed-off-by: Yuxuan Shui --- src/backend/gl/gl_common.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/backend/gl/gl_common.c b/src/backend/gl/gl_common.c index 7ade23398d..88078e67ab 100644 --- a/src/backend/gl/gl_common.c +++ b/src/backend/gl/gl_common.c @@ -1213,6 +1213,8 @@ void *gl_shadow_from_mask(backend_t *base, void *mask, auto source_texture = gl_new_texture(GL_TEXTURE_2D); glActiveTexture(GL_TEXTURE0); glBindTexture(GL_TEXTURE_2D, source_texture); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexImage2D(GL_TEXTURE_2D, 0, GL_RED, new_inner->width, new_inner->height, 0, GL_RED, GL_UNSIGNED_BYTE, NULL); glBindTexture(GL_TEXTURE_2D, 0);