뉴인풋 시스템에서는 EventSystem.current.IsPointerOverGameObject(); 이 함수가 안먹는거 같은데 뉴인풋 전용 함수가 따로 있나요?
댓글 3
간단한건 터치 막을 투명한 이미지 최상위로 띄워두면 되고
아니면 그냥 인풋시스템 UI액션 Disable시키면 될것같음
태보미(taebomi)2025-04-27 01:16:00
원인: 터치 이벤트 발생 시 새로운 프레임에서 이벤트 처리 시작 -> 이때는 UI를 터치한건지 게임을 터치한건지 판단 불가로 둘다 실행됨해결: UI에서 터치했다면 터치 이벤트가 UI에서 소모될거기 때문에 한 프레임을 넘긴다예:Controller : MonoBehaviour{ bool pendingTouch = false; // perfrom 연결 = TryTouch // TryTouch 내에서 pendingTouch = true 변경 // 그럼 아래 Update에서 TouchEvent() 발생 시킴 void Update() { if (pendingTouch ) TouchEvent();}
간단한건 터치 막을 투명한 이미지 최상위로 띄워두면 되고 아니면 그냥 인풋시스템 UI액션 Disable시키면 될것같음
원인: 터치 이벤트 발생 시 새로운 프레임에서 이벤트 처리 시작 -> 이때는 UI를 터치한건지 게임을 터치한건지 판단 불가로 둘다 실행됨해결: UI에서 터치했다면 터치 이벤트가 UI에서 소모될거기 때문에 한 프레임을 넘긴다예:Controller : MonoBehaviour{ bool pendingTouch = false; // perfrom 연결 = TryTouch // TryTouch 내에서 pendingTouch = true 변경 // 그럼 아래 Update에서 TouchEvent() 발생 시킴 void Update() { if (pendingTouch ) TouchEvent();}
이 방법대로 하니깐 잘되네요 감사합니다.