Beispiel #1
0
        public static bool Collision(ref Contact contact)
        {
            switch (contact.FixtureA.Collider.Type)
            {
            case ColliderType.CIRCLE:
                return(CircleCollision.Collision(ref contact));

            case ColliderType.SEGMENT:
                return(SegmentCollision.Collision(ref contact));

            case ColliderType.POLYGON:
                return(PolygonCollisionSAT.Collision(ref contact));

            default:
                throw new Exception("Collider type is not supported");
            }
        }
Beispiel #2
0
        public static bool CircleVsSegment(ref Contact contact)
        {
            Fixture.Swap(ref contact.FixtureA, ref contact.FixtureB);

            return(SegmentCollision.SegmentVsCircle(ref contact));
        }