Unity 기능 - Input Actions 사용방법(게임 버튼 설정하는 방법) 스탠다드 2 -> 1.26.47

2024. 10. 7. 17:04카테고리 없음

Input System패키지를 추가해준다

Window → Package Manager → Unity Register → Input System → Install

 

패키지를 다운로드 후에 Input이라는 파일을 만든다음에 그곳에 Input Actions을 만든다.(이름은 Top Down Controller 2D로 설정)

 

Input Actions를 추가한 다음에 들어가서 Add Control Schemes를 해서 키보드(Keyboard)와 마우스(Mouse)를 추가하면 된다.

 

그리고 Player이라는 액션맵을 추가한다.(Player가 할 수 있는 액션들이다 라는 뜻.)

그리고 Actions부분에 Player가 할 액션들을 추가해 넣어주면 된다. (Move, Look, Fire)

 

Action Type : 입력을 어떻게 받을 것인지

- Value : 일반적인 상태에 사용함. 눌렀을 때, 누르고 있을 때, 뗄 때 등 다양한 상황에 대응할 수 있고, 다양한 컨트롤에 대응할 수 있음.

- Button : 눌렀을 때 딱 발생하는 액션에 활용. Control 타입이 Button으로 고정됩니다.

 

- Pass-Through : 명확화을 거치지 않은 Value. Value 쓰시면 됩니다.

 

 

Control Type : 입력 데이터가 어떤 식으로 들어올 지

 

Axis(float), Button(일반적으론 버튼을 누름에 따라 1, 0, 하지만 특이 케이스 있음), Vector2 (조이스틱 같은 것에 활용)

 

Move 와 Look은 액션타입을 Value라고 하고 Control Type을 Vector2를 사용할건데 이렇게 하는 이유는 Vector2로 표현할 수 있기 때문이고, Fire은 마우스를 눌렀을때랑 안눌렀을때 2개여서 Fire은 Value라는 액션타입을 가지지만 Control Type을 Any로 설정한다.(Any는 눌렀다 안눌렀다를 평가하기 좋아서 사용한다.)

 

그리고 이제 Move에 Binding을 추가해줄건데 AddUp/Down/Left/Right Composite를 추가해주면 2D Vector가 만들어 진다.

2D Vector는 (왼쪽, 오른쪽) 하나, (위쪽, 아래쪽 )하나 이렇게 2개를 합쳐서 2D Vector를 만든다. 2개의 축을 합쳐서 만드는 거다.

그리고 Up, Down, Left, Right의 Path에 W, S, A, D 를 추가하면 된다.

Look은 마우스 위치에 따라서 보여주는 거기때문에 Path에  Mouse들어가서 Position을 추가하면 된다.

Fire은 마우스 클리에 따른거니 Path에  Mouse들어가서 LeftButton을 추가하면 된다.

 

설정을 다하고 나서 Save Asset을 눌러줘야지 저장이 된다.

 

Interactions부분 설명 (Hold, , Tap)

Hold (누르는 깊이와 해당 시간만큼 키를 눌러야지 작동)

Press Point : 누르는 깊이에 따라서 인식을 할지 안할지 정하는거(그래서 마우스랑 키보드에서는 필요가 없는 부분이다.)

Hold Time : 해당 시간만큼 눌러야지 인식이 된다는 뜻(0.4초동안 누른다음에 손가락을 때야지 인식이 된다는 뜻)

Default를 누르면 값을 변경할 수 있다.

 

Tap (해당 시간안에 키를 때야지 작동)

Max Tap Duration : 해당 시간안에 손가락을 때야된다. 만약 해당 시간이 지난다음에 손가락을 때도 작동을 안한다.