From 6bd44c4fcd45aa64a757f8797db78252d2fee3b4 Mon Sep 17 00:00:00 2001 From: Alexander Orzechowski Date: Mon, 19 Jun 2023 12:05:11 -0400 Subject: renderer: Introduce wlr_scale_filter_mode --- render/gles2/pass.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'render/gles2') diff --git a/render/gles2/pass.c b/render/gles2/pass.c index 89ca873e..b1d21616 100644 --- a/render/gles2/pass.c +++ b/render/gles2/pass.c @@ -170,7 +170,18 @@ static void render_pass_add_texture(struct wlr_render_pass *wlr_pass, glActiveTexture(GL_TEXTURE0); glBindTexture(texture->target, texture->tex); - glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + + switch (options->filter_mode) { + case WLR_SCALE_FILTER_BILINEAR: + glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(texture->target, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + break; + case WLR_SCALE_FILTER_NEAREST: + glTexParameteri(texture->target, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + glTexParameteri(texture->target, GL_TEXTURE_MAG_FILTER, GL_NEAREST); + break; + } + glUniform1i(shader->tex, 0); glUniform1f(shader->alpha, alpha); set_proj_matrix(shader->proj, pass->projection_matrix, &dst_box); -- cgit v1.2.3