так вы приведите пример вашего кода, которым вы уже получили тот самый "один, а не все"
наверное у вас там FindFirstRaycast
а вообще, в общем случае вам надо
EventSystem eventSystem = FindObjectOfType<EventSystem>();
PointerEventData eventData = new PointerEventData(EventSystem.current);
List<RaycastResult> m_RaycastResultCache = new List<RaycastResult>();
eventSystem.RaycastAll(eventData, m_RaycastResultCache);
for (var i = 0; i < m_RaycastResultCache.Count; ++i)
.....
но это общий принцип как получить список List
это все что было задето текущим поинтером , а там уже среди всего этого...ковырять)