/* touch pinch zoom */ if (Input.touchCount == 2) { touchZero = Input.GetTouch(0); touchOne = Input.GetTouch(1); touchZeroPrevPos = touchZero.position - touchZero.deltaPosition; touchOnePrevPos = touchOne.position - touchOne.deltaPosition; prevTouchDeltaMag = (touchZeroPrevPos - touchOnePrevPos).magnitude; touchDeltaMag = (touchZero.position - touchOne.position).magnitude; deltaMagnitudeDiff = prevTouchDeltaMag - touchDeltaMag; if (Camera.main.orthographic) { Camera.main.orthographicSize += deltaMagnitudeDiff * orthoZoomSpeed; Camera.main.orthographicSize = Mathf.Max(Camera.main.orthographicSize, 0.1f); } else { Camera.main.fieldOfView += deltaMagnitudeDiff * perspectiveZoomSpeed; Camera.main.fieldOfView = Mathf.Clamp(Camera.main.fieldOfView, 10f, 90f); } }
- 모바일 환경에서 멀티터치로 핀치 줌 / 아웃을 하는 것
- Mathf.Clamp(현재, 최소, 최대);
'NOTE > SaveSource' 카테고리의 다른 글
[Source Save] TouchCameraMove.cs (0) | 2016.10.31 |
---|---|
[Source Save] InputTouchManager.cs (0) | 2016.10.27 |
[SaveSource] Drag Script (0) | 2016.10.14 |
[SaveSource] Player Cam & Input.Axis (0) | 2016.10.07 |
[SaveSource] GyroScope Camera (0) | 2016.10.06 |