From: Mikko Rasa Date: Fri, 14 Jul 2023 20:35:12 +0000 (+0300) Subject: Record texture bindings on older OpenGL versions X-Git-Url: https://git.tdb.fi/?a=commitdiff_plain;h=a09dfe17d817dac6aec3b48aca611c05abe08823;p=libs%2Fgl.git Record texture bindings on older OpenGL versions --- diff --git a/source/backends/opengl/program_backend.cpp b/source/backends/opengl/program_backend.cpp index a4e2958b..279d857f 100644 --- a/source/backends/opengl/program_backend.cpp +++ b/source/backends/opengl/program_backend.cpp @@ -188,13 +188,14 @@ void OpenGLProgram::add_glsl_stages(const GlslModule &mod, const map(this)->get_uniform_location(kvp.first); - if(location>=0) + auto i = lower_bound_member(rd.uniforms, Tag(kvp.first), &ReflectData::UniformInfo::tag); + if(i!=rd.uniforms.end() && i->location>=0) { if(ARB_separate_shader_objects) - glProgramUniform1i(id, location, kvp.second); + glProgramUniform1i(id, i->location, kvp.second); else - glUniform1i(location, kvp.second); + glUniform1i(i->location, kvp.second); + i->binding = kvp.second; } } }