• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1uniform half4 colorGreen, colorRed;
2
3bool test_float() {
4    bool ok = true;
5
6    ok = ok && ((float3x3(2) + 4) == float3x3(6, 4, 4, 4, 6, 4, 4, 4, 6));
7    ok = ok && ((float3x3(2) - 4) == float3x3(-2, -4, -4, -4, -2, -4, -4, -4, -2));
8    ok = ok && ((float3x3(2) * 4) == float3x3(8));
9    ok = ok && ((float3x3(2) / 4) == float3x3(0.5));
10
11    ok = ok && (4 + (float3x3(2)) == float3x3(6, 4, 4, 4, 6, 4, 4, 4, 6));
12    ok = ok && (4 - (float3x3(2)) == float3x3(2, 4, 4, 4, 2, 4, 4, 4, 2));
13    ok = ok && (4 * (float3x3(2)) == float3x3(8));
14    ok = ok && (4 / (float2x2(2, 2, 2, 2)) == float2x2(2, 2, 2, 2));
15
16    return ok;
17}
18
19bool test_half() {
20    bool ok = true;
21
22    ok = ok && ((half3x3(2) + 4) == half3x3(6, 4, 4, 4, 6, 4, 4, 4, 6));
23    ok = ok && ((half3x3(2) - 4) == half3x3(-2, -4, -4, -4, -2, -4, -4, -4, -2));
24    ok = ok && ((half3x3(2) * 4) == half3x3(8));
25    ok = ok && ((half3x3(2) / 4) == half3x3(0.5));
26
27    ok = ok && (4 + (half3x3(2)) == half3x3(6, 4, 4, 4, 6, 4, 4, 4, 6));
28    ok = ok && (4 - (half3x3(2)) == half3x3(2, 4, 4, 4, 2, 4, 4, 4, 2));
29    ok = ok && (4 * (half3x3(2)) == half3x3(8));
30    ok = ok && (4 / (half2x2(2, 2, 2, 2)) == half2x2(2, 2, 2, 2));
31
32    return ok;
33}
34
35half4 main(float2 coords) {
36    return test_float() && test_half() ? colorGreen : colorRed;
37}
38