diff options
Diffstat (limited to 'chromium/third_party/glslang/src/Test/swizzle.frag')
-rw-r--r-- | chromium/third_party/glslang/src/Test/swizzle.frag | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/chromium/third_party/glslang/src/Test/swizzle.frag b/chromium/third_party/glslang/src/Test/swizzle.frag new file mode 100644 index 00000000000..e336b67ebf8 --- /dev/null +++ b/chromium/third_party/glslang/src/Test/swizzle.frag @@ -0,0 +1,52 @@ +#version 110 + +uniform float blend; +uniform vec4 u; +uniform bool p; + +varying vec2 t; + +void main() +{ + float blendscale = 1.789; + + vec4 w = u; + vec4 w_undef; // test undef + vec4 w_dep = u; // test dependent swizzles + vec4 w_reorder = u; // test reordering + vec4 w2 = u; + vec4 w_flow = u; // test flowControl + + w_reorder.z = blendscale; + + w.wy = t; + + w_reorder.x = blendscale; + + w2.xyzw = u.zwxy; + + w_reorder.y = blendscale; + + w_dep.xy = w2.xz; + w_dep.zw = t; + + w_undef.xy = u.zw; + + if (p) + w_flow.x = t.x; + else + w_flow.x = t.y; + + gl_FragColor = mix(w_reorder, w_undef, w * w2 * w_dep * w_flow); + + vec2 c = t; + vec4 rep = vec4(0.0, 0.0, 0.0, 1.0); + + if (c.x < 0.0) + c.x *= -1.0; + + if (c.x <= 1.0) + rep.x = 3.4; + + gl_FragColor += rep; +} |