diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-06-03 17:23:13 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-06-03 17:24:04 +0300 |
commit | 96eab0875597bad3e0470f67cb2ba8269cd06b03 (patch) | |
tree | 63961a8ff78779575b42718df3c22b4251634167 /source/blender/draw | |
parent | b2dcff4c21a645fa16ca39484d206a38944168d2 (diff) |
DRW: Always unbind texture after drawing
This fix issues with the image editor
Diffstat (limited to 'source/blender/draw')
-rw-r--r-- | source/blender/draw/intern/draw_manager_exec.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/draw/intern/draw_manager_exec.c b/source/blender/draw/intern/draw_manager_exec.c index 9cb4ffc99b0..144ce573460 100644 --- a/source/blender/draw/intern/draw_manager_exec.c +++ b/source/blender/draw/intern/draw_manager_exec.c @@ -1109,7 +1109,11 @@ static void draw_shgroup(DRWShadingGroup *shgroup, DRWState pass_state) if (shader_changed) { if (DST.shader) { GPU_shader_unbind(); - GPU_texture_unbind_all(); + + /* Unbinding can be costly. Skip in normal condition. */ + if (G.debug & G_DEBUG_GPU) { + GPU_texture_unbind_all(); + } } GPU_shader_bind(shgroup->shader); DST.shader = shgroup->shader; |