skia2/resources/sksl/shared/VectorConstructors.sksl
John Stiles ecd7c2278f Migrate the last SkSL tests in shared/ to dm.
The leftover tests in shared/ are not easily testable as Runtime
Effects; they do things that ES2 doesn't support or use a feature not
exposed directly by Runtime Effects.

Change-Id: I7ebe170cf713c4a0d2dbef333c1fcbac2410c67f
Bug: skia:11009
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/367059
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-02-08 21:37:48 +00:00

38 lines
1.3 KiB
Plaintext

/*#pragma settings NoInline*/
uniform half4 colorGreen, colorRed;
bool check(float2 v1, float2 v2, float2 v3, float3 v4, int2 v5, int2 v6, float2 v7, float2 v8,
float4 v9, int2 v10, bool4 v11, float2 v12, float2 v13, float2 v14, bool2 v15,
bool2 v16, bool3 v17) {
return half(v1.x) + half(v2.x) + half(v3.x) + half(v4.x) +
half(v5.x) + half(v6.x) + half(v7.x) + half(v8.x) +
half(v9.x) + half(v10.x) + half(v11.x) + half(v12.x) +
half(v13.x) + half(v14.x) + half(v15.x) + half(v16.x) +
half(v17.x) == 17;
}
half4 main() {
float2 v1 = float2(1);
float2 v2 = float2(1, 2);
float2 v3 = float2(float2(1));
float3 v4 = float3(float2(1), 1.0);
int2 v5 = int2(1);
int2 v6 = int2(float2(1, 2));
float2 v7 = float2(int2(1, 2));
float2 v8 = float2(v5);
float4 v9 = float4(v6.x, sqrt(2), int2(3, 4));
int2 v10 = int2(3.14, v1.x);
bool4 v11 = bool4(bool2(true, false), true, false);
float2 v12 = float2(1.0, false);
float2 v13 = float2(false);
float2 v14 = float2(bool2(false));
bool2 v15 = bool2(1.0);
bool2 v16 = bool2(float2(1));
bool3 v17 = bool3(1.0, int2(77));
return check(v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17)
? colorGreen
: colorRed;
}