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 vec3 vec; 10 for (int c = 0;c < 3; ++c) { 11 for (int r = 0;r < 3; ++r) { 12 vec.zyx[r] = testMatrix3x3[c][r]; 13 } 14 if (vec != expected) { 15 return false; 16 } 17 expected += 3.0; 18 } 19 return true; 20} 21bool test4x4_b() { 22 vec4 expected = vec4(4.0, 3.0, 2.0, 1.0); 23 vec4 vec; 24 for (int c = 0;c < 4; ++c) { 25 for (int r = 0;r < 4; ++r) { 26 vec.wzyx[r] = testMatrix4x4[c][r]; 27 } 28 if (vec != expected) { 29 return false; 30 } 31 expected += 4.0; 32 } 33 return true; 34} 35vec4 main() { 36 return test3x3_b() && test4x4_b() ? colorGreen : colorRed; 37} 38