public bool DoRaycast(int layerMask, Ray2D ray, out LFloat t, out int id, LFloat maxDistance)
        {
            Profiler.BeginSample("DoRaycast ");
            var ret = collisionSystem.Raycast(layerMask, ray, out t, out id, maxDistance);

            Profiler.EndSample();
            return(ret);
        }
        public static bool Raycast(int layerMask, Ray2D ray, out LRaycastHit2D ret, LFloat maxDistance)
        {
            ret = new LRaycastHit2D();
            LFloat t = LFloat.one;
            int    id;

            if (_instance.DoRaycast(layerMask, ray, out t, out id, maxDistance))
            {
                ret.point      = ray.origin + ray.direction * t;
                ret.distance   = t * ray.direction.magnitude;
                ret.colliderId = id;
                return(true);
            }

            return(false);
        }
 public static bool Raycast(int layerMask, Ray2D ray, out LRaycastHit2D ret)
 {
     return(Raycast(layerMask, ray, out ret, LFloat.MaxValue));
 }
 public bool Raycast(int layerType, Ray2D checkRay, out LFloat t, out int id)
 {
     return(GetBoundTree(layerType).Raycast(checkRay, LFloat.MaxValue, out t, out id));
 }
 public bool Raycast(int layerType, Ray2D checkRay, out LFloat t, out int id, LFloat maxDistance)
 {
     return(GetBoundTree(layerType).Raycast(checkRay, maxDistance, out t, out id));
 }