From eb07056e707d56599f3443e5b59fcd92ffd79e95 Mon Sep 17 00:00:00 2001 From: clayjohn Date: Tue, 1 Nov 2022 13:40:23 -0700 Subject: Add texture reading code to OpenGL3 renderer for web and mobile This allows using texture_2d_get on all platforms which is needed for the get_image function This commit also fixes some OpenGL warnings on the Web platform that came from attempting to map a buffer with zero length --- drivers/gles3/rasterizer_canvas_gles3.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'drivers/gles3/rasterizer_canvas_gles3.cpp') diff --git a/drivers/gles3/rasterizer_canvas_gles3.cpp b/drivers/gles3/rasterizer_canvas_gles3.cpp index 5d0edda6c5..aa96703d80 100644 --- a/drivers/gles3/rasterizer_canvas_gles3.cpp +++ b/drivers/gles3/rasterizer_canvas_gles3.cpp @@ -587,6 +587,13 @@ void RasterizerCanvasGLES3::_render_items(RID p_to_render_target, int p_item_cou _record_item_commands(ci, p_canvas_transform_inverse, current_clip, blend_mode, p_lights, index, batch_broken); } + if (r_last_index >= index) { + // Nothing to render, just return. + state.current_batch_index = 0; + state.canvas_instance_batches.clear(); + return; + } + // Copy over all data needed for rendering. glBindBuffer(GL_UNIFORM_BUFFER, state.canvas_instance_data_buffers[state.current_buffer].ubo); #ifdef WEB_ENABLED -- cgit v1.2.3