New Input System
1. 개요
unity에서는 게임 플랫폼 환경마다 입력방식이 다른것을 고려해 New Input System이라는 것이 생겼다고 한다. 그래서 이번 포스트에서는 사용법과 세팅 방법에 대해 알아보도록 하자.
2. New Input System 설치
window -> Pacakge Manager -> Unity Register -> Input System
패키지 매니저에 좌측 상단에 보면 Unity Register 이 있다. 여기서 스크롤을 아래로 쭉 내려다보면 Input System 이라는 것이 있는데 지금 사진에는 설치된 상태이기 때문에 Remove라고 있지만 아마 설치가 되어있지 않다면 import라고 되어있을 것이다. 이를 import해주고 재시작하면 설치가 완료된다.
3. 파일 생성
Project에서 우클릭하여 create -> 가장 아래쪽 보면 Input Actions라고 나온다 이를 클릭하여 파일을 생성하고 Rename후 실행해보자.
4. New Input System 창
지금은 창에 값이 들어와있는 상태이지만 빨간색으로 칸쳐져있는 것들이 다 비어있는 상태가 default이다.
4-1 Contorl Schema
좌측 상단의 빨간박스가 Control Schema이다. 이는 플랫폼마다 keyboard를 쓸수도 mouse를 쓸수도 모바일 또는 콘솔일 수도 있기 때문에 상황에 따라 자신이 원하는 스키마를 만들면된다.
새로 만들게 되면 이름을 정해줄 수 있고 위와같이 원하는대로 고를 수 있다.
4-2 Action maps, Action, Properties 설정하기
Action maps는 사용할 키를 Map의 이름으로 정하는 것을 말한다. 필자의 경우 Player에 사용하기를 원하기 때문에 Player라고 이름을 지었다.
이렇게 이름을 지으면 Action을 정할 수 있다.
New Action을 생성하면 옆에 Action Properties가 생성되는데, ActionType 에는 Value , Control Type에는 Vector2 가 들어가있다. Action Type에서 Value는 어떠한 값을 받아서 값을 받았을 때 행동이 이루어지게끔 하는 방식이고, 이는 Button과 함께 들어있는데 Button은 눌림과 안눌림에 따라 입력 여부가 결정된다고 한다.
그리고 Control Type에서는 키가 눌렀을 때 어떤 자료형 타입을 리턴을 받아 작동할 지를 정하는 옵션이다. 상하좌우로 움직여야 하기 때문에 Vector2를 받아왔다.
+버튼을 눌러보면 Up Down Left Right라고 나와있는데 이를 선택하면 된다.
그러면 위와같이 자동으로 설정되며, 우측에서 어떤 키로 어떤 행동을 할 지 선택할 수 있다. 검색하여 사용할 수 있기 때문에 검색하여 wsad를 설정하여 상하 좌우로 움직이면 된다.