1uniform half4 colorGreen, colorRed, colorBlack, colorWhite, testInputs; 2 3half4 main(float2 coords) { 4 int4 intGreen = int4(colorGreen * 100); 5 int4 intRed = int4(colorRed * 100); 6 7 return (mix(intGreen.x, intRed.x, false) == intGreen.x && 8 mix(intGreen.xy, intRed.xy, bool2(false)) == intGreen.xy && 9 mix(intGreen.xyz, intRed.xyz, bool3(false)) == intGreen.xyz && 10 mix(intGreen.xyzw, intRed.xyzw, bool4(false)) == intGreen.xyzw && 11 mix(intGreen.x, intRed.x, true) == intRed.x && 12 mix(intGreen.xy, intRed.xy, bool2(true)) == intRed.xy && 13 mix(intGreen.xyz, intRed.xyz, bool3(true)) == intRed.xyz && 14 mix(intGreen.xyzw, intRed.xyzw, bool4(true)) == intRed.xyzw && 15 mix(colorGreen.x, colorRed.x, false) == colorGreen.x && 16 mix(colorGreen.xy, colorRed.xy, bool2(false)) == colorGreen.xy && 17 mix(colorGreen.xyz, colorRed.xyz, bool3(false)) == colorGreen.xyz && 18 mix(colorGreen.xyzw, colorRed.xyzw, bool4(false)) == colorGreen.xyzw && 19 mix(colorGreen.x, colorRed.x, true) == colorRed.x && 20 mix(colorGreen.xy, colorRed.xy, bool2(true)) == colorRed.xy && 21 mix(colorGreen.xyz, colorRed.xyz, bool3(true)) == colorRed.xyz && 22 mix(colorGreen.xyzw, colorRed.xyzw, bool4(true)) == colorRed.xyzw) ? colorGreen 23 : colorRed; 24} 25 26