#version 330 core

in vec2 uv;
out vec4 color;

uniform float offset;
uniform float r = 1.;

uniform float radius = 0.1;

uniform vec3 ball_color;

void main() {
  vec2 p = uv*2.-1.;
  p.y *= 9./16.;

  color = vec4(mod(p.xyx + offset + vec2(0,0.5).xxy, vec3(1)), 1);
  color.r = r;
  color.rgb = mix(color.rgb, ball_color, smoothstep(1, 0.9, length(p) / radius));
}
