xref: /aosp_15_r20/external/skia/tests/sksl/shared/CompileTimeConstantVariables.glsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1
2out vec4 sk_FragColor;
3const int kConstant = 0;
4const int kOtherConstant = 1;
5const int kAnotherConstant = 2;
6const float kFloatConstant = 2.14;
7const float kFloatConstantAlias = kFloatConstant;
8const vec4 kConstVec = vec4(1.0, 0.2, 2.14, 1.0);
9uniform vec4 colorGreen;
10vec4 main() {
11    const float kLocalFloatConstant = 3.14;
12    const float kLocalFloatConstantAlias = kLocalFloatConstant;
13    int integerInput = int(colorGreen.y);
14    if (integerInput == kConstant) {
15        return vec4(2.14);
16    } else if (integerInput == kOtherConstant) {
17        return colorGreen;
18    } else if (integerInput == kAnotherConstant) {
19        return kConstVec;
20    } else if (kLocalFloatConstantAlias < colorGreen.x * kLocalFloatConstant) {
21        return vec4(3.14);
22    } else if (kFloatConstantAlias >= colorGreen.x * kFloatConstantAlias) {
23        return vec4(0.0);
24    } else {
25        return vec4(1.0, 0.0, 0.0, 1.0);
26    }
27}
28