Unity) InputManager

본문 로딩 중...
댓글 0
댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.

댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.
Unity에는 입력을 다루는 방식이 두가지가 있습니다.
이번에는 이전버전에 존재하는 Input Manager에 대해 다뤄보겠습니다.
세 함수 모두 어느 키를 트리거로 받을지 인자로 받습니다.
열거형 KeyCode 를 사용하며, KeyCode.Space 같이 사용합니다.
해당 키를 누르고 있는 동안 true 를 반환합니다.\
해당 키를 누른 그 프레임만 true 를 반환합니다.
해당 키에서 손을 뗀 그 프레임만 true 를 반환합니다.
축의 이름으로 진행방향을 받아옵니다.
==float horizontal = Input.GetAxisRaw("Horizontal");==
돌려주는 것은 bool 이 아닌 float 형으로 반환합니다.
필터를 거친 값을 돌려줍니다.
GetAxis 는 중간 값을 거쳐 올라가기 때문에 소수점 수까지 반환합니다.
필터를 거치지 않은 값을 돌려줍니다.
GetAxisRaw는 ==-1, 0 , 1== 만 반환합니다.
| 하려는 일 | 고르는 것 |
|---|---|
| 눌렀는지 여부만 알면 되는 것 | GetAxisRaw |
| 값이 서서히 오르내리는 편이 나은 것 | GetAxis |
==Input.mousePosition==
마우스포인터가 위치한 화면의 픽셀 좌표를 반환해주고,
원점은 왼쪽 아래입니다.
if (Input.GetMouseButtonDown(MOUSE_BUTTON_LEFT))
{
Debug.Log($"InputProbe: 마우스 포인터 좌표 {Input.mousePosition}");
}
==Mouse X== 와 ==Mouse Y== 는 직전 프레임에서 이번 프레임 사이에 마우스가 x와 y방향으로 움직인 양을 반환해줍니다.
float mouseX = Input.GetAxis("Mouse X");
float mouseY = Input.GetAxis("Mouse Y");
Debug.Log($"MouseDeltaSample: 마우스가 가로 {mouseX}, 세로 {mouseY}만큼 움직였습니다.");
![[Unity] LOD](https://data.develog.develrocket.com/upload/develog/user_1777093328305/1789912609623-ww36y9/_____2026-09-20_225147.png)