#define pi 3.141592653589793238462643383279
#define twopi (pi * 2.0)
varying vec2 rcoords;
uniform float progress;

const float maxRad = 0.8;
const float minRad = 0.4;

void main() {
	float r = length(rcoords);
	if(r < minRad || r > maxRad)
		discard;
	float ang = (atan(rcoords.y, rcoords.x) + pi) / twopi;
	if(ang > progress)
		discard;

	float alpha = abs(r - (minRad + (maxRad - minRad) / 2.0));
	alpha /= (maxRad - minRad);
	alpha = 1.0 - alpha;
	gl_FragColor.rgb = gl_Color.rgb;
	gl_FragColor.a = alpha;
}
