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:
authorJeroen Bakker <jeroen@blender.org>2022-11-11 10:23:16 +0300
committerJeroen Bakker <jeroen@blender.org>2022-11-11 10:47:58 +0300
commit88c956c13be40aeaaf3828369ab63801413fef82 (patch)
treeb4ecf3665497264cd88b12b41119d597855cc1bc /source/blender/editors/space_view3d/view3d_draw.cc
parentb2000412f21dfa5da6a02c7b0922280f5049cc2a (diff)
Fix T100969: Memory leak GPU subdivision during rendering.
The viewport cleans up old subdivision buffers right after drawing. During rendering this was not done and when rendering many frames this lead to memory issues. This patch will also clear up the GPU Subdivision buffers after any offscreen render or final render. There is already a mutex so this is safe to be done from a non main thread. Thanks to @kevindietrich to finding the root cause.
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_draw.cc')
-rw-r--r--source/blender/editors/space_view3d/view3d_draw.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/editors/space_view3d/view3d_draw.cc b/source/blender/editors/space_view3d/view3d_draw.cc
index 5d4ed032bb4..6400a015ef1 100644
--- a/source/blender/editors/space_view3d/view3d_draw.cc
+++ b/source/blender/editors/space_view3d/view3d_draw.cc
@@ -1717,6 +1717,7 @@ void ED_view3d_draw_offscreen(Depsgraph *depsgraph,
do_color_management,
ofs,
viewport);
+ DRW_cache_free_old_subdiv();
GPU_matrix_pop_projection();
GPU_matrix_pop();