language:unity:3-스마트폰
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
language:unity:3-스마트폰 [2012/12/27 02:02] – 바깥 편집 127.0.0.1 | language:unity:3-스마트폰 [2024/04/23 22:44] (현재) – 바깥 편집 127.0.0.1 | ||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | ====== swipe 인식 방법 ====== | ||
+ | 다른 인터페이스를 못찾아서 우선 이 방법으로. | ||
+ | |||
+ | ===== 좌 << | ||
+ | |||
+ | 좌에서 우, 또는 그 반대를 인식하기 위해서. | ||
+ | * 터치를 감지할 오브젝트 추가는 따로 하고. | ||
+ | |||
+ | 터치를 감지할 오브젝트에 스크립트를 추가하고, | ||
+ | |||
+ | * UICamera.currentTouch.pos : NGUI 이벤트 상에서 터치가 발생된 위치를 저장 | ||
+ | * UICamera.currentTouch.totalDelta : OnPress(true)(=마우스 버튼 다운) 이벤트 이후, \\ OnPress(false)(=마우스 버튼 업)가 발생된 타이밍에 이동된 좌표량을 보여준다. | ||
+ | |||
+ | <code csharp> | ||
+ | void OnPress( bool isPressed ) | ||
+ | { | ||
+ | // OnPress가 눌렸을때의 좌표 값을 출력해본다. | ||
+ | Debug.Log( " | ||
+ | ", 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로 가능 | ||
+ | |||
+ | ====== 에디터의 해상도 설정 화면 ====== | ||
+ | |||
+ | {{: |