SPIRV-Cross/shaders/legacy/fragment/struct-varying.legacy.frag
Hans-Kristian Arntzen 036b9b73f5 Emit storage qualifier in the correct place.
Need to emit qualifiers in a specific order for legacy GLSL.

<interpolation> <storage> <precision> <type>.
2017-02-24 09:56:17 +01:00

26 lines
403 B
GLSL

#version 310 es
precision highp float;
struct Inputs
{
vec4 a;
vec2 b;
};
layout(location = 0) in Inputs vin;
layout(location = 0) out vec4 FragColor;
void main()
{
// Read struct once.
Inputs v0 = vin;
// Read struct again.
Inputs v1 = vin;
// Read members individually.
vec4 a = vin.a;
vec4 b = vin.b.xxyy;
FragColor = v0.a + v0.b.xxyy + v1.a + v1.b.yyxx + a + b;
}