게임엔진/Unreal

[블루 프린트]입력 이벤트 여러가지 방법

CodeJB 2024. 1. 30. 23:53

1. 블루 프린트 이벤트 이용 (나이브한 방식)

- 블루 프린트에서 오른쪽 마우스 클릭

- Keyboard Events에서 원하는 입력 이벤트 노드를 사용한다.

 

2. 언리얼 엔진의 입력 세팅 이용 (언리얼 권장)

 

Project Settings -> Input의 Action Mappings와 Axis Mappings

(문서)https://www.unrealengine.com/ko/blog/input-action-and-axis-mappings-in-ue4

동작 매핑(Action Mapping) :  키 누르고 뗴는 데에 대한 액션
축 매핑(Axis Mapping) : 연속적인 범위가 있는 입력에 대한 액션(키 입력에 대한 value를 설정한다는 의미)

 

동작 매핑

Action Mappings에 Attack이라는 함수를 등록함으로써 InputAction Attack이라는 노드가 자동으로 추가된 모습.

Space Bar를 Pressed하면 그에 연결된 함수인 Attack Event가 실행될 것이다.

만약 Shift가 체크돼있다면, Shift를 누르고 Space Bar를 눌러야 이벤트가 동작함.

 

축 매핑

Axis Mappings에 function 이름과 키값과 Scale값을 입력함으로써 MoveUp의 return value와 MoveRight의 return value를 Get하는 함수가 추가됐다.

만약 A를 입력하면 Get MoveRight 함수에서 -1.0을 리턴해줄 것이다. 만약 W를 입력하면 Get MoveUp함수에서 1.0을 리턴할 것이다.

 

 

커맨드 패턴

롤과 같은 게임을 보면 스킬 키보드 입력값이 QWER로 기본 설정돼있지만, 사용자의 편의에 따라 언제든 수정이 가능하다. 언리얼 엔진의 Input을 이용하게되면 이러한 커맨드 패턴으로 유저가 키맵핑을 커스터마이징 할 수 있도록 제공이 가능하다.
(예시)https://www.youtube.com/watch?v=PuI7MzvSECc