public static void CreateBroadPhaseContacts(BroadPhase broadPhase, List <Body> bodies, out List <Contact> contacts) { contacts = new List <Contact>(); List <Body> queryBodies = new List <Body>(); foreach (Body body in bodies) { queryBodies.Clear(); broadPhase.Query(body, queryBodies); foreach (Body queryBody in queryBodies) { if (queryBody == body) { continue; } Contact contact = new Contact() { bodyA = body, bodyB = queryBody }; contacts.Add(contact); } } }