j = i + 1 (no duplicate pairs)circleSample, cached circle geometrysampleCircle, read centre and radius from a colliderpairWantsCollision, layer mask filtersamplesOverlap, narrow-phase circle testnotifyPair, invoke callbackscheckColliderPair, one unordered pair end-to-endCheckCollision, pair loops onlycombineCollisionIDs