| #version 110 | |
| uniform float d; | |
| uniform vec4 bigColor, smallColor; | |
| uniform vec4 otherColor; | |
| varying float c; | |
| uniform float threshhold; | |
| uniform float threshhold2; | |
| uniform float threshhold3; | |
| uniform float minimum; | |
| varying vec4 BaseColor; | |
| uniform bool b; | |
| void main() | |
| { | |
| vec4 color = BaseColor; | |
| vec4 color2; | |
| color2 = otherColor; | |
| if (c > d) | |
| color += bigColor; | |
| else | |
| color += smallColor; | |
| if (color.z < minimum) | |
| return; | |
| color.z++; | |
| if (color.z > threshhold) | |
| discard; | |
| color++; | |
| // Two path, different rest | |
| if (color.w > threshhold2) { | |
| if (color.z > threshhold2) | |
| return; | |
| else if (b) | |
| color.z++; | |
| else { | |
| if (color.x < minimum) { | |
| discard; | |
| } else { | |
| color++; | |
| } | |
| } | |
| } else { | |
| if (b) | |
| discard; | |
| else | |
| return; | |
| } | |
| // // Two path, shared rest | |
| // if (color.w > threshhold2) { | |
| // if (color.z > threshhold2) | |
| // return; | |
| // else if (b) | |
| // color++; | |
| // else { | |
| // if (color.x < minimum) { | |
| // discard; | |
| // } else { | |
| // color++; | |
| // } | |
| // } | |
| // } else { | |
| // if (b) | |
| // discard; | |
| // else | |
| // return; | |
| // } | |
| // // One path | |
| // if (color.w > threshhold2) { | |
| // if (color.z > threshhold2) | |
| // return; | |
| // else { | |
| // if (color.x < minimum) { | |
| // discard; | |
| // } else { | |
| // color++; | |
| // } | |
| // } | |
| // } else { | |
| // if (b) | |
| // discard; | |
| // else | |
| // return; | |
| // } | |
| gl_FragColor = color * color2; | |
| } |