xref: /aosp_15_r20/external/skia/tests/sksl/intrinsics/Step.glsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1
2out vec4 sk_FragColor;
3uniform vec4 testInputs;
4uniform vec4 colorGreen;
5uniform vec4 colorRed;
6vec4 main() {
7    const vec4 constGreen = vec4(0.0, 1.0, 0.0, 1.0);
8    vec4 expectedA = vec4(0.0, 0.0, 1.0, 1.0);
9    vec4 expectedB = vec4(1.0, 1.0, 0.0, 0.0);
10    vec4 expectedC = vec4(0.0, 1.0, 1.0, 1.0);
11    return ((((((((((((((((((((((step(0.5, testInputs.x) == expectedA.x && step(0.5, testInputs.xy) == expectedA.xy) && step(0.5, testInputs.xyz) == expectedA.xyz) && step(0.5, testInputs) == expectedA) && 0.0 == expectedA.x) && vec2(0.0) == expectedA.xy) && vec3(0.0, 0.0, 1.0) == expectedA.xyz) && vec4(0.0, 0.0, 1.0, 1.0) == expectedA) && step(testInputs.x, 0.0) == expectedB.x) && step(testInputs.xy, vec2(0.0, 1.0)) == expectedB.xy) && step(testInputs.xyz, vec3(0.0, 1.0, 0.0)) == expectedB.xyz) && step(testInputs, constGreen) == expectedB) && 1.0 == expectedB.x) && vec2(1.0) == expectedB.xy) && vec3(1.0, 1.0, 0.0) == expectedB.xyz) && vec4(1.0, 1.0, 0.0, 0.0) == expectedB) && step(colorRed.x, colorGreen.x) == expectedC.x) && step(colorRed.xy, colorGreen.xy) == expectedC.xy) && step(colorRed.xyz, colorGreen.xyz) == expectedC.xyz) && step(colorRed, colorGreen) == expectedC) && 0.0 == expectedC.x) && vec2(0.0, 1.0) == expectedC.xy) && vec3(0.0, 1.0, 1.0) == expectedC.xyz) && vec4(0.0, 1.0, 1.0, 1.0) == expectedC ? colorGreen : colorRed;
12}
13