- 마우스, 키보드 등 입력관련 모든 것이 있는 클래스
키 입력의 3가지 종류

키보드, 마우스 무관
Down .anyKeyDown: 아무 입력을 최초로 받을 때 true (return bool값)
Stay .anyKey: 아무 입력을 받으면 true (꾹 누르고 있으면 계속 호출)
키보드 입력을 받으면 true
Down .GetkeyDown(parameter)
Stay .Getkey(parameter)
Up .GetkeyUp(parameter)
GetKey() 의 parameter: KeyCode.@@@
- KeyCode. = 키보드 키 라는 뜻 (KeyCode도 하나의 클래스)
[대표적으로 쓰이는 키]
- KeyCode.Return = Enter
- KeyCode.LeftArrow = 왼쪽 방향키
- KeyCode.Escape = ESC
마우스 버튼 입력을 받으면 true
Down .GetMouseButtonDown(parameter)
Stay .GetMouseButton(parameter)
Up .GetMouseButtonUp(parameter)
[대표적으로 쓰이는 키]
- 0: 마우스 왼쪽 버튼
- 1: 마우스 왼쪽 버튼
버튼 입력
Down .GetButtonDown(parameter)
Stay .GetButton(parameter)
Up .GetButtonUp(parameter)
- Input.GetButton은 입력 설정(Input Settings)에서 정의한 가상의 버튼 이름(문자열로 지정)을 사용
- 유니티의 입력 설정 경로: Edit > Project Settings > Input
- 예를 들어, "Jump"라는 버튼을 입력 설정에서 정의하면, 이 버튼은 키보드의 스페이스바와 컨트롤러의 A 버튼 등 여러 입력 장치와 매핑될 수 있다.
따라서 Input.GetButton("Jump")를 호출하면, 어떤 입력 장치에서든 "Jump"로 정의된 입력이 발생하면 true를 반환한다.
축 입력 (WASD)
Stay .GetButton("Horizontal") / .GetButton("Vertical")
- 축(Axis): 입력 장치의 연속적인 값(예: 아날로그 스틱의 기울기, 마우스 이동량)을 표현
- 축의 현재 상태를 -1 ~ 1 사이의 값으로 반환
이때 축의 값을 가져오는 메서드에는 2가지가 존재:
1. Input.GetAxis
2. Input.GetAxisRaw
- Input.GetAxis는 입력 값을 부드럽게 보간(Smoothing) 처리하여 반환
- 예를 들어, 키보드의 좌우 화살표를 눌렀을 때, 값이 0에서 1로 즉시 바뀌지 않고, 점차적으로 변화
- 움직임을 부드럽게 처리하는 데 유용
- Input.GetAxisRaw는 입력 값을 즉시 반환
- 예를 들어, 키보드의 좌우 화살표를 눌렀을 때, 값이 즉시 0에서 1 또는 -1로 변화
- 정확하고 빠른 입력 처리가 필요한 경우에 유용