| #version 140 | |
| in float d; | |
| in vec4 bigColor, smallColor; | |
| in vec4 otherColor; | |
| in float c; | |
| in float threshhold; | |
| in float threshhold2; | |
| in float threshhold3; | |
| in float minimum; | |
| in vec4 BaseColor; | |
| 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; | |
| } |