Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2019-09-27 16:31:03 +0300
committerClément Foucault <foucault.clem@gmail.com>2019-09-27 16:31:18 +0300
commitdf3891ed817ff7b4bc8ba1c4c313f0fc2df8eb1f (patch)
treea74987e9e8549af597c18553f797a67dbec075fd /source/blender/draw/intern/draw_manager.c
parentc6018391765c4406f8e190cb837174ed259ac90d (diff)
Fix T69377 Texture flickering when selecting in solid viewport (AMD Pro driver)
Workaround that does not fix the real issue. The bug is caused by glBufferData inside DRW_instance_buffer_finish > GPU_vertbuf_use but only after the selection code which resets the number of items in idatalist->pool_buffers. I don't understand why this is happening as the vbo ids are all valid and no error is reported. What is even more strange, is that it affects another vbo which has no connection with the ones in DRW_instance_buffer_finish.
Diffstat (limited to 'source/blender/draw/intern/draw_manager.c')
-rw-r--r--source/blender/draw/intern/draw_manager.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 4e4ff2d6dc6..6387cecc01f 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -2630,7 +2630,13 @@ void DRW_draw_select_id(Depsgraph *depsgraph, ARegion *ar, View3D *v3d, const rc
drw_engines_cache_finish();
+#if 0 /* This is a workaround to a nasty bug that seems to be a nasty driver bug. (See T69377) */
DRW_render_instance_buffer_finish();
+#else
+ DST.buffer_finish_called = true;
+ // DRW_instance_buffer_finish(DST.idatalist);
+ drw_resource_buffer_finish(DST.vmempool);
+#endif
}
/* Start Drawing */