summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp
diff options
context:
space:
mode:
authorBrian Semrau <brian.semrau@gmail.com>2021-11-12 21:38:19 -0500
committerBrian Semrau <brian.semrau@gmail.com>2021-11-12 21:51:14 -0500
commit716e15cd26e67c34601393f7624815890b30c28f (patch)
treec9bde2be2ad5fec27fb2a31b3f7217562726b24e /servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp
parent19571c9c4bb8c388ac5d9a0255a8c18c4680b7df (diff)
downloadredot-engine-716e15cd26e67c34601393f7624815890b30c28f.tar.gz
Fix multimesh still drawing when visible instances is zero
Diffstat (limited to 'servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp')
-rw-r--r--servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp b/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp
index 81a662c6eb..d013099cce 100644
--- a/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp
+++ b/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp
@@ -758,6 +758,10 @@ void RendererCanvasRenderRD::_render_item(RD::DrawListID p_draw_list, RID p_rend
instance_count = storage->multimesh_get_instances_to_draw(multimesh);
+ if (instance_count == 0) {
+ break;
+ }
+
RID uniform_set = storage->multimesh_get_2d_uniform_set(multimesh, shader.default_version_rd_shader, TRANSFORMS_UNIFORM_SET);
RD::get_singleton()->draw_list_bind_uniform_set(p_draw_list, uniform_set, TRANSFORMS_UNIFORM_SET);
push_constant.flags |= 1; //multimesh, trails disabled