본문 바로가기

개인적인 팁

언리얼5 변경된 Input(EnhancedInput) 사용법 c++(1)

기존에 사용되던 편집->프로젝트세팅-> [입력] 이동

향상된 입력 액션 및 매핑 컨텍스트를 사용하라고 나온다.

이전 기능을 사용하지 못하는건 아니다. 그대로 사용 가능하다.

 

 

[입력] 에서 조금 스크롤링 해보면 입력 클래스 관련된 부분을 확인 할수 있다.

 

 

 

콘텐츠 브라우져에서 우클릭->입력 확인

입력 매핑 컨텍스트와 입력액션을 볼수있다. 위의 안내 메세지는 이것을 의미하는것

 

입력액션 Asset을 생성 후 들어가보면

특정 액션을 추가 후, 해당 액션에 대한 조정 키 값을 어떤 형태로 받을지 정의할수있다. 

 

 

입력 매핑컨텍스트 Asset 을 생성 후 들어가보자

입력액션 Asset 을 목록을로 가지고있으면서, Input(유저입력) 과 연결 시켜줄수있다. 
(이름그대로 인풋맵핑 해준다.(?))

 

 

 

위2개 에셋을 이름 변경 후 세팅해보았다.

IA_Move - 인풋액션

IMC_InputMappingContext  - 인풋맵핑컨텍스트

 

IA_Move 세팅

WASD이동 위해 Vector2d 세팅

 

 

 

IMC_InputMappingContext  세팅

IA_Move에 키를 할당 해준다.

 

여기서 EnhancedInput(향상된인풋) 방식의 장점이 나오는데.

IA_Move - Vector2D로 값을 얻는다 X,Y

 

W : x값참조 : + 이동
S :  x값참조 : - 이동 
필요하다. 

 

S키의 Modifiers 를 보면, Negate로 설정 했다. 이렇게하면 반대값을 S키에 세팅 할수있다. 

 

D : y값참조 : + 이동
A:  y값참조 : - 이동 

스위즐 입력축 값을 사용하면 입력값을 Y값에 받을수있다.

받을 Y값을 Negate해서 - 값으로 얻어오게 세팅한다.

 

Asset 세팅이 기본적으로 되었다.

예전보다 복잡하긴한데. 하나의 액션에 여러키를 묶어서 처리할수있는건 장점처럼 보인다.