From 9323b9724dce4021745c14763c6ff12fabc40bad Mon Sep 17 00:00:00 2001 From: HampusM Date: Sun, 29 Mar 2026 20:46:09 +0200 Subject: fix(engine): prevent shaders using UBOs for other shaders --- engine/src/renderer/opengl.rs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/engine/src/renderer/opengl.rs b/engine/src/renderer/opengl.rs index 5ed2aaa..be8abf0 100644 --- a/engine/src/renderer/opengl.rs +++ b/engine/src/renderer/opengl.rs @@ -873,15 +873,19 @@ fn handle_commands( ) .unwrap(); - uniform_buf.bind_to_indexed_target( - curr_gl_ctx, - opengl_bindings::buffer::BindingTarget::UniformBuffer, - binding_index as u32, - ); - uniform_buf }); + // The index into the uniform buffer binding target is for whatever + // shader program is currently bound so the uniform buffer object has + // to be re-bound so that a uniform buffer from another shader isn't + // used + uniform_buffer.bind_to_indexed_target( + curr_gl_ctx, + opengl_bindings::buffer::BindingTarget::UniformBuffer, + binding_index as u32, + ); + let fvec3_value; uniform_buffer -- cgit v1.2.3-18-g5258