/// <summary>
 /// Obtener el receptor más cercano
 /// </summary>
 /// <param name="tapReceivers"></param>
 /// <returns></returns>
 public ITapReceiver GetCloserObject(List <ITapReceiver> tapReceivers)
 {
     if (tapReceivers.Count > 0)
     {
         ITapReceiver closer         = tapReceivers[0];
         float        closerDistance = closer.GetGameObject().transform.position.z - InputController.Instance.mainCamera.transform.position.z;
         for (int i = 1; i < tapReceivers.Count; i++)
         {
             float distance = tapReceivers[i].GetGameObject().transform.position.z - InputController.Instance.mainCamera.transform.position.z;
             if (distance < closerDistance)
             {
                 closerDistance = distance;
                 closer         = tapReceivers[i];
             }
         }
         return(closer);
     }
     return(null);
 }
        public void OnPointerUp(PointerEventData eventData)
        {
            if (enableMultiTouch || activePointers.Count == 0)
            {
                List <ITapReceiver> pointerDownReceivers;
                if (useCircleCast)
                {
                    pointerDownReceivers = InputToCircleCast <ITapReceiver>(eventData.position, circleCastRadius);
                }
                else
                {
                    pointerDownReceivers = InputToRaycast <ITapReceiver>(eventData.position);
                }

                /*
                 * for (int i = 0; i < pointerDownReceivers.Count; i++)
                 *  pointerDownReceivers[i].OnPointerUp(position);
                 */

                ITapReceiver tapReceiver = GetCloserObject(pointerDownReceivers);
                tapReceiver?.OnPointerUp(position);
            }
            activePointers.Remove(eventData.pointerId);
        }