xkslang/Test/structAssignment.frag

40 строки
572 B
GLSL

#version 130
uniform sampler2D sampler;
varying mediump vec2 coord;
struct lunarStruct1 {
int i;
float f;
};
struct lunarStruct2 {
int i;
float f;
lunarStruct1 s1_1;
};
struct lunarStruct3 {
lunarStruct2 s2_1;
int i;
float f;
lunarStruct1 s1_1;
};
uniform lunarStruct1 foo;
uniform lunarStruct2 foo2;
uniform lunarStruct3 foo3;
void main()
{
lunarStruct2 locals2;
if (foo3.s2_1.i > 0)
locals2 = foo3.s2_1;
else
locals2 = foo2;
gl_FragColor = locals2.s1_1.f * texture2D(sampler, coord);
}