#version 430 core in vec4 gColor; in float gRadIn; in vec2 angles; in vec2 dist; out vec4 fColor; void main() { float sa = angles.x; vec2 sv = vec2 (-sin(sa), cos(sa)); float ea = angles.y; vec2 ev = vec2 (-sin(ea), cos(ea)); float d = (dist.x * dist.x) + (dist.y * dist.y); if (d > 1 || d < gRadIn || dot(sv, dist) < 0 || dot(ev, dist) > 0) {discard;} fColor = gColor; }