From 0030e4da7073d62561cca508330ab150b37ee6eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Tue, 7 May 2019 23:21:16 +0200 Subject: DRW: Make batch validation run first during iteration This reduces the cost of querying the batches to the batch cache. --- source/blender/draw/intern/draw_cache_impl_mesh.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'source/blender/draw/intern/draw_cache_impl_mesh.c') diff --git a/source/blender/draw/intern/draw_cache_impl_mesh.c b/source/blender/draw/intern/draw_cache_impl_mesh.c index 1f96a21dd94..f2b79b0d0e1 100644 --- a/source/blender/draw/intern/draw_cache_impl_mesh.c +++ b/source/blender/draw/intern/draw_cache_impl_mesh.c @@ -2095,12 +2095,16 @@ static void mesh_batch_cache_init(Mesh *me) drw_mesh_weight_state_clear(&cache->weight_state); } -static MeshBatchCache *mesh_batch_cache_get(Mesh *me) +void DRW_mesh_batch_cache_validate(Mesh *me) { if (!mesh_batch_cache_valid(me)) { mesh_batch_cache_clear(me); mesh_batch_cache_init(me); } +} + +static MeshBatchCache *mesh_batch_cache_get(Mesh *me) +{ return me->runtime.batch_cache; } -- cgit v1.2.3