| /*#pragma settings NoInline*/ | |
| uniform half4 colorRed, colorGreen, colorWhite, colorBlack; | |
| void setToColorBlack(out half4 x) { | |
| x = colorBlack; | |
| } | |
| half4 main(float2 coords) { | |
| half4 a, b, c, d; | |
| (b = colorRed), (c = colorGreen); | |
| a = (setToColorBlack(d), colorWhite); | |
| // These uniforms only contain 1s and 0s so these multiplies should be no-ops. | |
| a *= a; | |
| b *= b; | |
| c *= c; | |
| d *= d; | |
| return (a == colorWhite && | |
| b == colorRed && | |
| c == colorGreen && | |
| d == colorBlack) ? colorGreen : colorRed; | |
| } |