diff options
author | Campbell Barton <ideasman42@gmail.com> | 2017-04-27 21:33:58 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2017-04-27 21:54:04 +0300 |
commit | a680bcd13bc306dbc97fd3889718238117a8f992 (patch) | |
tree | 4c3bbbc537d71b2bbe081e3730cfeee14dc44ca7 /source/blender/gpu | |
parent | e4d856e31b2719c8ab9796495c1ac7aa48870246 (diff) |
Draw Manager: basic text overlay support
Diffstat (limited to 'source/blender/gpu')
-rw-r--r-- | source/blender/gpu/GPU_viewport.h | 3 | ||||
-rw-r--r-- | source/blender/gpu/intern/gpu_viewport.c | 7 |
2 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/gpu/GPU_viewport.h b/source/blender/gpu/GPU_viewport.h index f1a4e0bbcdb..93bf96a5830 100644 --- a/source/blender/gpu/GPU_viewport.h +++ b/source/blender/gpu/GPU_viewport.h @@ -66,6 +66,9 @@ typedef struct ViewportEngineData { PassList *psl; StorageList *stl; + /* we may want to put this elsewhere */ + struct DRWTextStore *text_draw_cache; + /* Profiling data */ double init_time; double cache_time; diff --git a/source/blender/gpu/intern/gpu_viewport.c b/source/blender/gpu/intern/gpu_viewport.c index 3781a9c8be0..94c2b022e86 100644 --- a/source/blender/gpu/intern/gpu_viewport.c +++ b/source/blender/gpu/intern/gpu_viewport.c @@ -123,6 +123,13 @@ static void gpu_viewport_engines_data_free(GPUViewport *viewport) MEM_freeN(data->psl); MEM_freeN(data->stl); + /* We could handle this in the DRW module */ + if (data->text_draw_cache) { + extern void DRW_text_cache_destroy(struct DRWTextStore *dt); + DRW_text_cache_destroy(data->text_draw_cache); + data->text_draw_cache = NULL; + } + MEM_freeN(data); BLI_remlink(&viewport->data, link); |