in vec2 v_pos;
in vec2 v_size;
in vec2 v_aa;
in vec2 v_dp;
in vec4 v_color;

out vec4 o_color;

void main() {
  vec2 dp  = v_dp;
  dp      *= pow(length(dp), .1);

  vec2 diff = abs(dp - v_pos);
  float aa = uni.aa * 4.;
  float a =
      (1.-smoothstep(v_size.x-aa, v_size.x, diff.x)) *
      (1.-smoothstep(v_size.y-aa, v_size.y, diff.y));

  o_color    = v_color;
  o_color.a *= a;
}