#version 130 uniform sampler2D sampler; varying vec2 coord; struct s0 { int i; }; struct s00 { s0 s0_0; }; struct s1 { int i; float f; s0 s0_1; }; struct s2 { int i; float f; s1 s1_1; }; struct s3 { s2[12] s2_1; int i; float f; s1 s1_1; }; uniform s0 foo0; uniform s1 foo1; uniform s2 foo2; uniform s3 foo3; uniform s00 foo00; void main() { s0 locals0; s2 locals2; s00 locals00; float[6] fArray; s1[10] locals1Array; if (foo3.s2_1[9].i > 0) { locals2.f = 1.0; locals2.s1_1 = s1(0, 1.0, s0(0)); fArray = float[6]( 0.0, 0.0, 0.0, 0.0, 0.0, 0.0); locals1Array[6] = foo1; locals0 = s0(0); locals00 = s00(s0(0)); } else { locals2.f = coord.x; locals2.s1_1 = s1(1, coord.y, foo0); fArray = float[6]( 0.0, 1.0, 2.0, 3.0, 4.0, 5.0); locals1Array[6] = locals2.s1_1; locals0 = foo1.s0_1; locals00 = foo00; } if (locals0.i > 5) locals0 = locals00.s0_0; gl_FragColor = (float(locals0.i) + locals1Array[6].f + fArray[3] + locals2.s1_1.f) * texture2D(sampler, coord); }