같은 키를 입력해서 여러 가지 동작을 취하고 싶을 때가 있다.
여기서는 단순히 Input Action의 트리거 이벤트를 설정하는 것으로 동작 함수를 변경하는 방법으로 접근한다.
예를 들어 짧게 누르면 구르기
길게 누르면 질주
1. Input Action을 프로퍼티로 만든다.

2. 바인딩할 함수를 선언한다.

3. Enhanced Input Component에 Bind Action을 통해 Input Action과 함수를 바인딩한다.

입력의 구분을 트리거 이벤트로만 지정했다.
트리거 이벤트를 구분하면 다음과 같다.
1. Started : 입력이 들어온 직후 한 번 호출 => 입력 감지
2. Ongoing : Started 이후 Triggered를 만족 못한 상태 내내 호출 => 차징
3. Triggered : 발동 조건을 만족했을 때, 내내 호출, 이 조건은 사용자가 직접 설정 가능
4. Completed : 트리거가 한 번이라도 발생하고 입력이 종료되었을 때 한 번 호출 => 차지샷 발사, 각종 종료 로직
5. Canceled : 입력은 들어왔으나 Completed에 도달하지 못했을 때 한 번 호출
에디터에 가서 트리거 조건으로 "0.2초 이상 누르고 있을 때" 를 조건으로 설정하면
0.2초를 누른 이후에 Sprint 함수가 발동해서 질주를 하고
질주가 시작된 이후에 키를 떼면 Completed가 되며 질주를 중단하고
입력은 들어왔으나 0.2초 전에 키를 떼면 Canceled가 되며 Rolling 함수가 실행된다.
InputAction은 아래와 같이 트리거 조건을 추가했고

Mapping Context에서는 스페이스 바 키 하나만 지정했다.

키 하나에 두 가지 동작이 같이 구현되었다.

'Unreal Engine > 기능 구현' 카테고리의 다른 글
| [Unreal Engine 5] 카메라 위아래 회전(각도) 제한 (0) | 2025.10.16 |
|---|---|
| [Unreal Engine 5] GameplayTag Container(게임플레이 태그 컨테이너)로 상태 관리(State Component) (0) | 2025.10.16 |
| [Unreal Engine 5] Zoom In, Zoom Out (0) | 2025.10.16 |
| [Unreal Engine 5] 애니메이션 블루프린트(3) : 캐싱 포즈와 낙하 및 착지 (0) | 2025.10.15 |
| [Unreal Engine 5] C++ : 애니메이션 블루프린트(2) : 이동 (0) | 2025.10.15 |
