diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-10-09 16:12:28 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-10-09 17:33:59 +0300 |
commit | d39043b5ae054510e3683b63cfefde76e5a4c6db (patch) | |
tree | 21d7b63cf0eeec6964b48cb6836cfd611add5f02 /source/blender/gpu/opengl | |
parent | 1f6b7387ad0177c1dec9bb83b7c7586a454691db (diff) |
Revert "Revert "BGL: Workaround broken bgl usage caused by GPU refactor""
This reverts commit f23bf4cb109cb8f39f873c4f80acbec3f33b098c.
Diffstat (limited to 'source/blender/gpu/opengl')
-rw-r--r-- | source/blender/gpu/opengl/gl_debug.cc | 2 | ||||
-rw-r--r-- | source/blender/gpu/opengl/gl_state.cc | 12 |
2 files changed, 9 insertions, 5 deletions
diff --git a/source/blender/gpu/opengl/gl_debug.cc b/source/blender/gpu/opengl/gl_debug.cc index 797f9ff404c..b2b05124463 100644 --- a/source/blender/gpu/opengl/gl_debug.cc +++ b/source/blender/gpu/opengl/gl_debug.cc @@ -200,7 +200,7 @@ void check_gl_error(const char *info) void check_gl_resources(const char *info) { - if (!(G.debug & G_DEBUG_GPU)) { + if (!(G.debug & G_DEBUG_GPU) || GPU_bgl_get()) { return; } diff --git a/source/blender/gpu/opengl/gl_state.cc b/source/blender/gpu/opengl/gl_state.cc index cd24fa0e0e4..27c9b501add 100644 --- a/source/blender/gpu/opengl/gl_state.cc +++ b/source/blender/gpu/opengl/gl_state.cc @@ -73,13 +73,17 @@ GLStateManager::GLStateManager(void) : StateManager() void GLStateManager::apply_state(void) { - this->set_state(this->state); - this->set_mutable_state(this->mutable_state); - this->texture_bind_apply(); - this->image_bind_apply(); + if (!this->use_bgl) { + this->set_state(this->state); + this->set_mutable_state(this->mutable_state); + this->texture_bind_apply(); + this->image_bind_apply(); + } + /* This is needed by gpu_py_offscreen. */ active_fb->apply_state(); }; +/* Will set all the states regardless of the current ones. */ void GLStateManager::force_state(void) { /* Little exception for clip distances since they need to keep the old count correct. */ |