[Mesa-dev] [PATCH 23/28] glsl: add pack varying to resource list for vertex input / fragment output
Anders Jonsson
mailinglists at norsjovallen.se
Wed Jan 6 10:19:18 PST 2016
On 2015-12-29 06:00, Timothy Arceri wrote:
> 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
s/fragement/fragment
s/unsing/using
> + * 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;
More information about the mesa-dev
mailing list