public static bool CheckGeom(IPhysicsObject geom, int layerMask, QueryTriggerInteraction query = QueryTriggerInteraction.UseGlobal)
        {
            if (geom == null)
            {
                throw new System.ArgumentNullException("geom");
            }

            if (geom is Sphere)
            {
                var s = (Sphere)geom;
                return(Physics.CheckSphere(s.Center, s.Radius, layerMask, query));
            }
            else if (geom is Capsule)
            {
                var c = (Capsule)geom;
                return(Physics.CheckCapsule(c.Start, c.End, c.Radius, layerMask, query));
            }
            else
            {
                return(geom.TestOverlap(layerMask, query));
            }
        }