언리얼 5 연습

Enhanced Input ( 언리얼 5.1 부터 기본 설정으로 바뀜 )

슬뷔 2023. 8. 30. 13:11

Enhanced Input 은 언리얼 엔진에서 구 Input 을 대체하기 위해 나온 새로운 Input System 이다.

Enhanced Input ? ( 향상된 입력 )

언리얼 엔진 5 에서 런타임 리맵핑, 복잡한 입력 처리 ( 동시 입력 ) 등 향상된 입력 기능을 제공하는 플러그인 이다.

 

1. Input Action

2. Input Mapping Context

3. Modifier

4. Trigger

 

위 4가지 특성을 가진다.

 


Input Action ( 입력 액션 )

-> 액션이 할당되는 부분

Input Action 에서는 특정 키가 연결되지 않고, 역할에 대한 정보만을 구성하게 된다.

 

입력받는 정보는 bool, float, Vector 2D, Vector 3D 를 받을 수 있고, 어떤 입력값을 받을지에 따라 이를 정할 수 있다.

ex) 장비를 착용한다 -> bool 로 지정

이동 -> Vector 2D or Vector 3D

Value Type 을 통해 지정이 가능하다

 


Input Mapping Context ( 입력 매핑 컨텍스트 )

-> 사용자의 입력값을 만들어둔 인풋 액션과 바인딩 

사용자는 여러 개의 Input Mapping Context 를 가질 수 있으며, 이는 각각 우선순위가 있어 같은 키를 입력해도 어떤 액션이 나갈지 지정할 수 있다.

ex) 플레이어는 걷기와 인벤토리를 탐색할 때 각각의 Input Mapping Context 를 가질 수 있다.

이 때, 같은 W, A, S, D 키를 누르더라도 인벤토리를 열었을 때는 인벤토리를 우선탐색하도록 우선순위를 정할 수 있다.

언리얼에서는 기본적으로 제공하는 Input Mapping Context 를 보면, Jump, Move, Look 이라는 Input Action 을 맵핑할 수 있다.

 


Modifier

-> 입력 받은 값을 변환해주는 장치

IA_Move 의 w 의 modifiers 를 보면, Swizzle Input Axis Values 가 설정되어 있고 순서를 YXZ 로 두었다.

원래 입력을 받으면 XYZ 순서로 받게 되는데, 이 경우에는 YXZ 순서로 받게 한다.

즉, modifiers가 없다면 w 키를 눌렀을 때 x가 1이 되고, modifiers 있다면 w 키를 입력했을 때 y가 1 이 되도록 설정하는 것이다.


Trigger

-> Modifier 를 통해 입력 받은 값을 어떻게 활용할지 정하는 장치

총을 쏘기 전에 먼저 에임을 해야 한다거나, 짧게 누르면 약공격, 길게 누르면 차지어택이 나간다고 한다면

이를 모두 트리거에서 제어가 가능하다.