Original Post
i've been working on improving my verlet collision system, here's the way it works loop 1: update the circles (apply friction, add velocities) end loop 1 loop 2: (loop through each circle) -loop 3: (loop through every other circle) --do they collide? ---is it the closest (in relation to time) collision? if so mark it -end loop 3 was there a collision? -handle the collision end loop 2 the problem that i've run into is that it only handles 2 collisions per circle. This means if a ton of circles are mashed together only the nearest circles will collide. Is there a better way to handle this so every collision is checked based on when they collide without using too many loops?