skia2/resources/sksl/shared/OperatorsES3.sksl
John Stiles 9f43ceefa3 Allow vector operator~ in SkSL.
This is supported in GLSL ES3. (Strangely, vector operator! isn't.)
Previously, this was flagged as an error: http://review.skia.org/459885

Change-Id: I2c4299159fff58fefe8bd131c8d317cd82974a62
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/459886
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-10-18 15:03:33 +00:00

32 lines
749 B
Plaintext

uniform half4 colorGreen, colorRed;
uniform float unknownInput;
half4 main(float2 coords) {
float x = 1, y = 2;
int z = 3;
x = x - x + y * x * x * (y - x);
y = x / y / x;
z = (z / 2 % 3 << 4) >> 2 << 1;
bool b = (x > 4) == x < 2 || 2 >= unknownInput && y <= x;
bool c = unknownInput > 2;
bool d = b ^^ c;
bool e = b && c;
bool f = b || c;
x += 12;
x -= 12;
x *= y /= 10;
z |= 0;
z &= -1;
z ^= 0;
z >>= 2;
z <<= 4;
z %= 5;
x = (colorGreen.xy, 6);
y = (float(b) * float(c) * float(d) * float(e) * float(f), 6.0);
z = (colorRed.zw, 6);
int2 w = int2(~5);
w = ~w;
return (w.x == 5 && w.y == 5 && x == 6 && y == 6 && z == 6) ? colorGreen : colorRed;
}