Your ray circle intersection test is wrong.

It looks like you were assuming that the ‘a’ part of the quadratic
equation is 1.0.

Also, the discriminant should be 4ac. So:

```
float a = Vector2.Dot(ray_Direction, ray_Direction);
float discr = b*b - 4*a*c; // note the 4
...
float t = (-b - (float)Math.Sqrt(discr))/(2*a);
```

And so on from there.

Is this method correct for a swept circle circle test?

I test 2 circles (A and B)

In code:

There is something incorrect with my method as the collision response doesn’t work.

The penetration depth is incorrect and the method returns true even when the circles are not intersecting.

Can anyone point out where I have gone wrong please?