This is needed now that we pack these type of varyings when they have a component layout qualifier. --- src/glsl/linker.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 44dd7f0..52a326a 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -3763,13 +3763,14 @@ build_program_resource_list(struct gl_shader_program *shProg) if (input_stage == MESA_SHADER_STAGES && output_stage == 0) return; - /* Program interface needs to expose varyings in case of SSO. */ - if (shProg->SeparateShader) { - if (!add_packed_varyings(shProg, input_stage, GL_PROGRAM_INPUT)) - return; - if (!add_packed_varyings(shProg, output_stage, GL_PROGRAM_OUTPUT)) - return; - } + /* Program interface needs to expose varyings in case of SSO, or in case of + * vertex inputs/fragement outputs that are packed unsing the component + * layout qualifier. + */ + if (!add_packed_varyings(shProg, input_stage, GL_PROGRAM_INPUT)) + return; + if (!add_packed_varyings(shProg, output_stage, GL_PROGRAM_OUTPUT)) + return; if (!add_fragdata_arrays(shProg)) return; -- 2.4.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev