Exemplo n.º 1
0
    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);
            }
        }
    }