From 535f1adc8d0b0b2fc200e0c8780fc897653d98d3 Mon Sep 17 00:00:00 2001 From: clayjohn Date: Thu, 24 Nov 2022 12:58:22 -0800 Subject: Fix drawing of Mesh2D The batch was being discarded if no instance buffer was present, but an instance buffer is only needed for MultiMesh and particles. --- drivers/gles3/rasterizer_canvas_gles3.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/gles3/rasterizer_canvas_gles3.cpp b/drivers/gles3/rasterizer_canvas_gles3.cpp index 0c102bfc1d..07d56b156c 100644 --- a/drivers/gles3/rasterizer_canvas_gles3.cpp +++ b/drivers/gles3/rasterizer_canvas_gles3.cpp @@ -1306,10 +1306,6 @@ void RasterizerCanvasGLES3::_render_batch(Light *p_lights, uint32_t p_index) { instance_uses_custom_data = true; } - if (instance_buffer == 0) { - break; - } - ERR_FAIL_COND(mesh.is_null()); uint32_t surf_count = mesh_storage->mesh_get_surface_count(mesh); @@ -1339,6 +1335,9 @@ void RasterizerCanvasGLES3::_render_batch(Light *p_lights, uint32_t p_index) { } if (instance_count > 1) { + if (instance_buffer == 0) { + break; + } // Bind instance buffers. glBindBuffer(GL_ARRAY_BUFFER, instance_buffer); glEnableVertexAttribArray(1); -- cgit v1.2.3