[Unity] 마우스(포인터)가 UI위에 있는지 확인하기Unity/UI2022. 5. 11. 13:25
Table of Contents
private bool IsPointerOverUI()
{
PointerEventData pointerEventData = new PointerEventData(EventSystem.current);
pointerEventData.position = Input.mousePosition;
List<RaycastResult> results = new List<RaycastResult>();
EventSystem.current.RaycastAll(pointerEventData, results);
for (int i = 0; i < results.Count; i++)
{
if (results[i].gameObject.layer == LayerMask.NameToLayer("UI"))
return true;
}
return false;
}
당연한거지만 UI오브젝트의 레이어는 UI로 돼있어야한다
기본적으로 생성하면 레이어가 UI로 돼있다.
'Unity > UI' 카테고리의 다른 글
[Unity] UI 롱 클릭 이벤트 처리 with UniRx (0) | 2024.06.11 |
---|---|
[Unity] Button을 상속받아 커스텀하기 (0) | 2023.03.09 |
[Unity] UI드래그로 이동 시킬 때 범위 제한 (0) | 2022.08.29 |
[Unity] UI 클릭, 드래그이벤트 여러오브젝트 동시 처리 (0) | 2022.04.14 |
[Unity] 자이로스코프 Parallax 이펙트 (0) | 2022.03.22 |