Original Post
This must be a fundamental issue in basic collision detection. I'm trying to make a snooker game and its all working fine except for a major issue with the ball collisions. I iterate through every ball, and create a vector between 2 balls. If the vector magnitude is greater than 2*radius then a collision has happened. All very simple. Problem is that after a collision, the collided balls are closer than 2*radius and do not always seperate in time for the next collision detection. They therefore get stuck permanently colliding with each other. Is there a standard way of getting around this problem?