language:unity:3-스마트폰
swipe 인식 방법
다른 인터페이스를 못찾아서 우선 이 방법으로.
좌 <<->> 우
좌에서 우, 또는 그 반대를 인식하기 위해서.
- 터치를 감지할 오브젝트 추가는 따로 하고.
터치를 감지할 오브젝트에 스크립트를 추가하고, OnPress() 함수를 추가한다.
- UICamera.currentTouch.pos : NGUI 이벤트 상에서 터치가 발생된 위치를 저장
- UICamera.currentTouch.totalDelta : OnPress(true)(=마우스 버튼 다운) 이벤트 이후,
OnPress(false)(=마우스 버튼 업)가 발생된 타이밍에 이동된 좌표량을 보여준다.
void OnPress( bool isPressed ) { // OnPress가 눌렸을때의 좌표 값을 출력해본다. Debug.Log( "OnPress >> " + isPressed.ToString() + ", UICamera.currentTouch.pos >> " + UICamera.currentTouch.pos.ToString() + ", UICamera.currentTouch.totalDelta >> " + UICamera.currentTouch.totalDelta.ToString() ); // 이렇게 하면, 인식은 된다. if( isPressed == false ) { if( UICamera.currentTouch.totalDelta.x > 150f && Mathf.Abs(UICamera.currentTouch.totalDelta.y) <= 15 ) Debug.Log( "Swipe OK" ); } }
간단히는 OnPress(false)일때 UICamera.currentTouch.totalDelta 값만 확인해도 (좌 «→> 우)스와이프 확인이 가능할 것 같다. 위 아래도 큰 문제는 없을 듯 하고..
전체 화면을 대상으로 하는 인식은 어떻게 하나... 화면 크기의 오브젝트를 만들어야 하나?
- 화면 크기만큼 오브젝트 크기를 조정하는 것은 UIScale로 가능
에디터의 해상도 설정 화면
language/unity/3-스마트폰.txt · 마지막으로 수정됨: 2024/04/23 22:44 저자 127.0.0.1