#version 120
#define pi 3.141592653589793238462643383279
#define twopi (pi * 2.0)
varying vec2 rcoords;
varying vec2 uv;
uniform float progress;
uniform float dim_factor;
uniform sampler2D texture;

void main() {
	vec4 color = texture2D(texture, uv) * gl_Color;
	float ang = atan(rcoords.y, rcoords.x);
	if(ang > -0.5 * pi)
		ang = (ang + 0.5 * pi) / twopi;
	else
		ang = (ang + 2.5 * pi) / twopi;

	if(ang > progress)
		color.a *= dim_factor;
	gl_FragColor = color;
}
