diff options
| author | sanikoyes | 2015-01-20 20:01:58 +0800 |
|---|---|---|
| committer | sanikoyes | 2015-01-20 20:01:58 +0800 |
| commit | 75be78b3702a043ce95fc54df45b98908c9593ec (patch) | |
| tree | 94a9e2ce929880877378899fce12c79d17ee8552 | |
| parent | a0511ed59a0e03232bf3abb49b3c916591453aef (diff) | |
| download | godot-75be78b3702a043ce95fc54df45b98908c9593ec.tar.gz godot-75be78b3702a043ce95fc54df45b98908c9593ec.tar.zst godot-75be78b3702a043ce95fc54df45b98908c9593ec.zip | |
Fix filter options not works in render target texture
| -rw-r--r-- | drivers/gles2/rasterizer_gles2.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/gles2/rasterizer_gles2.cpp b/drivers/gles2/rasterizer_gles2.cpp index 9375532f0..37a222549 100644 --- a/drivers/gles2/rasterizer_gles2.cpp +++ b/drivers/gles2/rasterizer_gles2.cpp @@ -4038,8 +4038,16 @@ void RasterizerGLES2::render_target_set_size(RID p_render_target,int p_width,int glGenTextures(1, &rt->color); glBindTexture(GL_TEXTURE_2D, rt->color); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, rt->width, rt->height, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + + if (rt->texture_ptr->flags&VS::TEXTURE_FLAG_FILTER) { + + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + } else { + + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + } glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, rt->color, 0); |
