yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
2f21fcce
main
1#version 130 2 3uniform bool u_b ; 4uniform bvec2 u_b2 ; 5uniform bvec3 u_b3 ; 6uniform bvec4 u_b4 ; 7 8uniform int u_i ; 9uniform ivec2 u_i2 ; 10uniform ivec3 u_i3 ; 11uniform ivec4 u_i4 ; 12 13uniform float u_f ; 14uniform vec2 u_f2 ; 15uniform vec3 u_f3 ; 16uniform vec4 u_f4 ; 17 18uniform bool i_b ; 19uniform bvec2 i_b2 ; 20uniform bvec3 i_b3 ; 21uniform bvec4 i_b4 ; 22 23flat in int i_i ; 24flat in ivec2 i_i2 ; 25flat in ivec3 i_i3 ; 26flat in ivec4 i_i4 ; 27 28in float i_f ; 29in vec2 i_f2 ; 30in vec3 i_f3 ; 31in vec4 i_f4 ; 32 33void main () 34{ 35bool b = bool (u_i ) ^^ bool(u_f); 36bvec2 b2 = bvec2(u_i, u_f); 37bvec3 b3 = bvec3(u_i, u_f, i_i); 38bvec4 b4 = bvec4(u_i, u_f, i_i, i_f); 39 40int i = int(u_f) + int(b); 41ivec2 i2 = ivec2(u_f2) + ivec2(b2); 42ivec3 i3 = ivec3(u_f3) + ivec3(b3); 43ivec4 i4 = ivec4(u_f4) + ivec4(b4); 44 45float f = i; 46vec2 f2 = i2; 47vec3 f3 = i3; 48vec4 f4 = i4; 49 50f += ( float ( i ) + float(b)); 51f2 -= vec2(i2) + vec2(b2); 52f3 /= vec3(i3) + vec3(b3); 53f4 += vec4(i4) + vec4(b4); 54 55f4 += vec4(bvec4(i_i4)); 56f4 += vec4(bvec4(u_f4)); 5758 f += f - i; 59f2 += vec2(f, i) + i2; 60f3 += i3 + vec3(f, i, f); 61f4 += vec4(b, i, f, i) + i4; 6263 f2 += vec2(f, i) * i; 64f3 += vec3(f, i, f) + i; 65f4 += i - vec4(b, i, f, i); 66 67i2 += ivec2(f, i); 68i3 += ivec3(f, i, f); 69i4 += ivec4(b, i, f, i); 70 71if (f < i || i < f || 72f2 == i2 || 73i3 != f3) 74f = (b ? i : f2. x ) + (b2. x ? f3. x : i2. y ); 75 76gl_FragColor = 77 b || 78 b2. x || 79b2. y || 80b3. x || 81b3. y || 82b3. z || 83b4. x || 84b4. y || 85b4. z || 86b4. w ? vec4( 87i + 88i2. x + 89i2. y + 90i3. x + 91i3. y + 92i3. z + 93i4. x + 94i4. y + 95i4. z + 96i4. w + 97f + 98f2. x + 99f2. y + 100f3. x + 101f3. y + 102f3. z + 103f4. x + 104f4. y + 105f4. z + 106f4. w ) : vec4( 1.0 ); 107 108// with constants... 109ivec4 cv2 = ivec4( 1.0 ); 110bvec4 cv5 = bvec4(cv2); 111gl_FragColor += float(cv5 ); 112}