1 2out vec4 sk_FragColor; 3uniform vec4 colorGreen; 4uniform vec4 colorRed; 5uniform mat3 testMatrix3x3; 6uniform mat4 testMatrix4x4; 7bool test3x3_b() { 8 vec3 expected = vec3(3.0, 2.0, 1.0); 9 for (int c = 0;c < 3; ++c) { 10 vec3 vec = testMatrix3x3[c]; 11 for (int r = 0;r < 3; ++r) { 12 if (vec.zyx[r] != expected[r]) { 13 return false; 14 } 15 } 16 expected += 3.0; 17 } 18 return true; 19} 20bool test4x4_b() { 21 vec4 expected = vec4(4.0, 3.0, 2.0, 1.0); 22 for (int c = 0;c < 4; ++c) { 23 vec4 vec = testMatrix4x4[c]; 24 for (int r = 0;r < 4; ++r) { 25 if (vec.wzyx[r] != expected[r]) { 26 return false; 27 } 28 } 29 expected += 4.0; 30 } 31 return true; 32} 33vec4 main() { 34 return test3x3_b() && test4x4_b() ? colorGreen : colorRed; 35} 36