[UE/Basic] 입력 트리거

2025. 1. 27. 22:46·Unrael/Basic

1. 개요

오늘은 입력 액션에서 설정할 수 있는 다양한 트리거에 대해 알아본다.

 

2. 트리거

트리거는 총의 방아쇠를 뜻하는 사격 용어로서

어떤 동작에 반응하여 필요한 동작을 실행하는 것을 뜻한다.

 

입력 액션에서 "트리거를 설정한다"는 의미는

플레이어 입력시, 발생할 상태(트리거 스테이트)를 설정한다와 동일하다.

 

3. 트리거 스테이트

플레이어 입력은 아쉽게도 클릭 / 논클릭 두 가지로 상태로 나뉘지 않는다.

입력을 디테일하게 처리하기 위해 언리얼에서는 5가지의 상태를 제공한다.

  • Started : 플레이어의 입력이 시작되었다.
  • Ongoing : 트리거를 향해 나아가는 중이다. ex) 키를 길게 누르고 있는 경우
  • Triggered : 트리거 되었다. ex) 키를 눌렀다., 키를 떼었다., 키를 누르고 있다.
  • Completed : 트리거가 종료되었다.
  • Cancled : 트리거 되지 못하고 취소되었다.

중요한 점은 트리거 종류마다 활성화되는 상태들이 모두 다름을 알아야 한다.

 

3. 트리거 종류

9가지의 트리거 종류

총 9가지의 트리거 종류가 있다.

그 중 활용 빈도가 있는 6가지를 알아보자.

 

3.1 Down (눌려있는 동안)

 

특징

  • 최초 1회에 Started가 활성화된다.
  • 버튼을 누르는 중에는 지속적으로 Triggered가 활성화된다. (= 지속적으로 바인딩된 함수가 호출된다.)
  • 버튼을 떼면 Completed가 활성화된다.
  • Ongoing과 Cancled 상태는 없다.

 

3.2 Preesed (눌렀을 때 1번)

 

특징

  • 버튼을 누른 최초 1회에 Started, Triggered, Completed가 모두 활성화된다.
  • 버튼을 누르는 중 또는 버튼을 떼었을 때 아무런 상태도 활성화되지 않는다. (이미 Completed된 상황)

 

3.3 Released (뗐을 때)

 

특징

  • 최초 1회에 Started가 활성화된다.
  • 버튼을 누르는 중에는 Ongoing이 지속적으로 활성화된다.
  • 버튼을 떼면 Triggered와 Completed가 한 번씩 활성화된다.

 

3.4 Hold (특정시간동안 누르고 있을 때)

 

특징

  • 최초 1회에 Started가 활성화된다.
  • 버튼을 누르는 중에는 Ongoing이 일정시간동안 지속적으로 활성화된다.
    • 일정시간 이후에는 Triggered가 지속적으로 활성화된다.
    • 일정시간 이전에 버튼을 뗴면 Cancled가 활성화된다.

요약

  • 버튼을 눌렀다 바로 때면 Cancled가 활성화된다.
  • 버튼을 잠시 누르고 있으면 Triggered가 활성화된다.

 

3.5  Pulse

 

특징

  • 최초 1회에 Started와 Triggered가 1번 활성화된다.
  • 버튼을 누르는 중에는 Ongoing이 지속적으로 활성화된다.
  • 그리고 일정 기간마다 Triggered가 1번 활성화된다.
  • 버튼을 떼면 Cancled가 활성화된다. (Completed 상태가 없다)

 

3.6 Tap

 

특징

  • Hold와 비슷하다.
  • 최초 1회에 Started가 활성화된다.
  • 버튼을 누르는 중에는 Ongoing이 일정시간동안 지속적으로 활성화된다.
    • 일정시간 이후에는 Cancled가 활성화된다.
    • 일정시간 이전에 버튼을 떼면 Triggered와 Completed가 활성화된다.

 

요약

  • 버튼을 눌렀다 바로 때면 Triggered가 활성화된다.
  • 버튼을 잠시 누르고 있으면 도중에 Cancled가 활성화된다.

 

참고

언리얼 엔진의 향상된 입력 | 언리얼 엔진 5.5 문서 | Epic Developer Community

All 9 Input Triggers in Unreal Engine Explained in Under 3 Minutes

'Unrael > Basic' 카테고리의 다른 글

[UE/Basic] 콜리전 (Collision)  (0) 2025.02.04
[UE/Basic] 캐릭터 회전 (Charctor Rotation)  (0) 2025.02.03
[UE/Basic] 자료구조 - TSet  (0) 2025.01.24
[UE/Basic] 직렬화 (Serialization)  (1) 2025.01.23
[UE/Basic] 자료구조 - TArray  (0) 2025.01.22
'Unrael/Basic' 카테고리의 다른 글
  • [UE/Basic] 콜리전 (Collision)
  • [UE/Basic] 캐릭터 회전 (Charctor Rotation)
  • [UE/Basic] 자료구조 - TSet
  • [UE/Basic] 직렬화 (Serialization)
DevColIn
DevColIn
복잡함을 단순하게
  • DevColIn
    심플한 코딩생활
    복잡함을 단순하게
  • 전체
    오늘
    어제
    • 전체보기 (223)
      • Unreal 부트캠프 (49)
        • TIL (34)
        • 사전캠프 (7)
        • 본캠프 (8)
      • Unrael (10)
        • 환경설정 (0)
        • Basic (19)
        • Component (5)
        • GAS (GameplayAbilitySystem) (3)
        • AI (2)
        • Implement (10)
        • UI (1)
        • Error (1)
        • Network (2)
        • Tip (1)
      • Level Design (5)
      • Math (1)
      • Design Pattern (16)
      • Computer Science (2)
        • Network (1)
        • Database (1)
      • Algorithm (79)
        • Basic (4)
        • Practice (74)
      • C++ (4)
        • Basic (4)
      • Tool (0)
      • Game (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Til
    디자인 패턴
    component
    사전캠프
    알고리즘
    Algorithm
    GameplayEffect
    디자인패턴
    Design Pattern
    c++
    하드 레퍼런싱
    gas
    actor
    내일배움캠프
    Implement
    Animation
    KPT회고
    assetmanager
    unrealengine
    레벨디자인
    퀘스트
    게임동기화
    tsoftobjectptr
    본캠프
    소프트 레퍼런신
    DesignPattern
    unreal
    액터
    AI
    basic
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
DevColIn
[UE/Basic] 입력 트리거
상단으로

티스토리툴바