Input Manager

Input Manager는 입력에 관한 것들을 다루는 매니저이다.

이동에 GetAxis()를 사용할 건데 -1부터 1까지의 값을 반환하는 함수이다. -> Horizontal 수평 Vertical 수직

- Type에 따라 입력 받는 원천이 달라진다. (조이스틱, 데스크탑 등)

- Dead : 데드존 - 값이 올라가게 하려면 얼마나 밀어야 하는지를 뜻한다.

- Sensitivity : 끝 값(-1이나 1)까지 가는데의 속도 -> 높을수록 빠름

Input Manager

 

 

Input System

Window - Pakage Manager - Input System을 설치한다.

Input System

문제가있다면 Edit - Project Settings - Player - Configuration - Active Input Handling의 Input Manager(old)를 선택하면 된다.

- using UnityEngine.InputSystem;을 하고

- Input Action이라는 변수를 SerializedField로 선언한다.

- 이후에 + 버튼을 누르면 여러 Action 중에서 선택할 수 있다.

Input Action
Input Action Inspector

- 더블클릭하여 바인딩할 Path를 정해줄 수 있다.

Binding

Path에서 Listen을 클릭해서 키보드를 누르면 해당 키를 불러와준다.

Listen

이후에 서브 키도 설정이 가능하다.

Subkey

그냥 바인딩 1개를 추가하여 한 방향만 등록해놓으면 다른 방향도 알아서 적용해준다.

바인딩2

이후 코드에서 인스펙터에서 바인딩한 movement를 가져올 때 Vector2타입이니 축에따라 값을 넣어주면 된다.

Binding한 값 넣어주기

 

OnEnable()

Play버튼을 눌렀을 때 Awake() 콜백이 발생하는데 그 다음으로 호출되는 함수가 OnEnable()이다.

- 유니티가 플레이 버튼이 눌렸을 때 Awake에서 찾을 수 있는 모든 스크립트에 일어나라고 명령하고 그 다음에 OnEnable이 호출되어 안에 들어있는 것들을 활성화 시킨다. ** OnDisable도 써줘야함 (비활성화를 위해)

유니티 라이프사이클

유니티 라이프사이클 일부분
Onable(), Disable()

 

'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 아르곤 침공' 카테고리의 다른 글

플레이어 회전  (0) 2022.08.26
플레이어 이동하기  (0) 2022.08.25
Timeline  (0) 2022.08.25
Terrain Texture, Tree  (0) 2022.08.25
Terrain Tools  (0) 2022.08.25

+ Recent posts