• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1uniform half4 colorGreen, colorRed;
2
3half4 main(float2 coords) {
4    float4 value = colorGreen.gggg * 2.5;
5    float4 whole, fraction;
6    bool4  ok;
7
8    // 2.5 equals 2 + 0.5.
9    fraction.x    = modf(value.x,    whole.x);
10    ok.x          = whole.x == 2 && fraction.x == 0.5;
11    fraction.xy   = modf(value.xy,   whole.xy);
12    ok.y          = whole.y == 2 && fraction.y == 0.5;
13    fraction.xyz  = modf(value.xyz,  whole.xyz);
14    ok.z          = whole.z == 2 && fraction.z == 0.5;
15    fraction.xyzw = modf(value.xyzw, whole.xyzw);
16    ok.w          = whole.w == 2 && fraction.w == 0.5;
17
18    return all(ok) ? colorGreen : colorRed;
19}
20