개요
스마트폰 모바일 게임 개발할 때 조작 방법으로 마우스 혹은 터치 입력이 주로 사용됩니다.
단말기에서 사용할 수 있는 조작 방법으로 터치가 유일하기 때문입니다.
터치 입력을 이용하여 기능을 제작할 때 UI와 터치가 겹치는 상황이 빈번히 발생하는데요.
터치 입력 포지션이 UI 위에 있는지 체크하여, 위에 있을 때는 기능을 하지 않도록 막으면 해결할 수 있어요.
사용방법
터치 입력 포지션이 UI 위에 있는지 체크하기 위해서 EventSystems 라이브러리를 참조해야합니다.
using UnityEngine.EventSystems;
예제) 마우스 입력 시
public class InputTest : MonoBehaviour {
void Update () {
// 입력 포지션이 UI 오브젝트 위에 있는지 체크
if(EventSystem.current.IsPointerOverGameObject()) {
return; // 아래 마우스 기능을 하지 않고 리턴
}
if(Input.GetMouseButtonDown(0)) {
Debug.Log("Mouse Button Down!");
}
}
}
'개발 > TIP' 카테고리의 다른 글
[GPGS] 구글 플레이 게임 서비스 유니티 플러그인 사용 시 실시간 갱신 문제 (0) | 2019.01.06 |
---|---|
[UNITY] Google 에서 제공하는 Admob 플러그인 사용시 Crash로 게임 실행이 안될때 (2) | 2019.01.03 |
[C#,UI] 마우스 or 터치 입력 포지션이 UI 위에 있는지 체크하기 (0) | 2018.11.20 |
[C#, INSPECTOR] 유니티 인스펙터를 빠르고 간단하게 커스텀하기 (0) | 2018.11.11 |
[C#] 유니티 이벤트 함수 실행 순서 (0) | 2018.11.06 |