[Unity] ios 빌드 시 UI 터치 제한 기능

2021. 3. 14. 00:20[Unity] 게임 개발

반응형

UI 만들다보면 UI와 게임씬에 반응이 같이 될때가 있다. 

 

그래서 UI를 터치할때는 인게임을 제외하고 싶을 때가 있다. 

 

그 때 사용하는 함수 EventSystem.current.IsPointerOverGameObject() == false 가 있다.

 

이 함수가 유니티 에디터 상에선 잘 작동했지만 ios 모바일 빌드를 진행하니 기능이 먹통이 되었다.

 

찾아보니 EventSystem.current.IsPointerOverGameObject() 함수가 파라메터(int)를 받는다.

 

따라서,

 

int pointerID;

 

#if UNITY_EDITOR

        pointerID = -1//PC나 유니티 상에서는 -1

#elif UNITY_IOS || UNITY_IPHONE

        pointerID = 0;  // 휴대폰이나 이외에서 터치 상에서는 0 

#endif

 

if (EventSystem.current.IsPointerOverGameObject(pointerID) == false)

{

    //UI 상에서 클릭하지 않았을 때, 함수

}

 

추가해주면 ios 빌드본에서도 ui클릭 제한 기능을 사용할수있다.

반응형