diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-02-26 23:12:19 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-02-27 16:50:16 +0300 |
commit | fe80d8ec3c459500258c33d2058558658f1df4f2 (patch) | |
tree | fa80b5b990584353aab8625aef8ea2d581453e86 /source/blender/draw/intern/draw_common.c | |
parent | be284c82d4a66d3eca568c7919555ce2d16073a0 (diff) |
DRW: Do not recreate the common uniform buffer every frame.
Diffstat (limited to 'source/blender/draw/intern/draw_common.c')
-rw-r--r-- | source/blender/draw/intern/draw_common.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/draw/intern/draw_common.c b/source/blender/draw/intern/draw_common.c index 62166092638..681a6a8dabe 100644 --- a/source/blender/draw/intern/draw_common.c +++ b/source/blender/draw/intern/draw_common.c @@ -122,12 +122,12 @@ void DRW_globals_update(void) ts.sizeEdge = 1.0f / 2.0f; /* TODO Theme */ ts.sizeEdgeFix = 0.5f + 2.0f * (2.0f * (MAX2(ts.sizeVertex, ts.sizeEdge)) * (float)M_SQRT1_2); - /* TODO Waiting for notifiers to invalidate cache */ - if (globals_ubo) { - DRW_uniformbuffer_free(globals_ubo); + + if (globals_ubo == NULL) { + globals_ubo = DRW_uniformbuffer_create(sizeof(GlobalsUboStorage), &ts); } - globals_ubo = DRW_uniformbuffer_create(sizeof(GlobalsUboStorage), &ts); + DRW_uniformbuffer_update(globals_ubo, &ts); ColorBand ramp = {0}; float *colors; |