Unreal Input Mapping 이란?

2025. 10. 17. 20:04·Unreal Project/Unreal Study

Input Mapping 이란?

  • 여러 입력 장치(키보드, 패드, 마우스 등)를 하나의 ‘Input Mapping Context’에 등록해
    플레이어가 어떤 키를 눌렀을 때 어떤 액션이 실행될지를 정의하는 구조”

Input Mapping

 

     Input Mapping은 각 Input Action이 어떤 키나 버튼 입력에 의해 실행될지를 정의한다.

Input Mapping에 정의된 Input Action 종류들

 

 IA_Move라는 Input Action은‘W’ 키 입력 시 호출되도록 설정되어 있다. 또한, Scalar 값을 이용해 키 입력으로 전달되는 값을 스케일링(배율 조정) 하여 이동 방향의 크기와 방향을 제어할 수 있다.

 

 Swizzle은 입력 축을 변환하는 기능으로,  예를 들어 (X → Y) 또는 (Y → X)처럼 입력되는 값을 다른 축으로 변경할 수 있다.

 (모든 방향은 카메라를 기준으로 결정된다.) 

 

 

  내 캐릭터에 적용하는 방법은 다음과 같다. 

Input Mapping 및 Input Action 초기화 코드

 

       ConstructorHeplers를 사용한 것은 바로 생성자 이기 때문에 사용 가능한 코드이다. 

       (※주의! ConstructorHeplers를 생성자 안에서 하지않고 런타임에서 할 시 에러가 발생함! )

 

       생성자에서 다음과 같이 초기화를 한 뒤

     

SetupPlayerInputComponent 함수

 

SetupPlayerInputComponent 함수는 Pawn 클래스의 PawnClientRestart() 함수 호출을 통해 한 번 호출되는데

해당 함수의 호출 흐름은 다음과 같다 

 

APlayer Controller의 ReceivedPlayer() 함수 호출로 시작하고 APlayerController의 SpawnSpectatorPawn()에서 

SpawnedSpectator->DispatchRestart(true); 함수를 호출하여 PawnClientRestart를 호출한다. 

 

SetupPlayerInputComponent 호출 코드

 

 

 해당 코드 사진을 보면 SetupPlayerInputComponent가 pawn 클래스를 상속받은 Character가 해당 함수를 오버라이드 하여 실  행된다.

 

SetupPlayerInputComponent 함수

위에서 보았던 해당 코드가 실행된다는 의미이다. 

 

여기까지 InputMapping을 어떻게 초기화 하는 지 및 어떻게 Input Action 함수를 등록하는지에 대해 알아 보았다.

'Unreal Project > Unreal Study' 카테고리의 다른 글

Unreal Weapon Socket 다루기  (0) 2025.10.27
Character Movement Component에 대하여 알아보  (0) 2025.10.22
Unreal의 GameMode 에 관하여 알아보자!  (0) 2025.10.15
Unreal Engine 코딩 규범에 대해 알아보자  (0) 2025.10.01
Hello_Unreal 출력 및 엔진 분석  (0) 2025.10.01
'Unreal Project/Unreal Study' 카테고리의 다른 글
  • Unreal Weapon Socket 다루기
  • Character Movement Component에 대하여 알아보
  • Unreal의 GameMode 에 관하여 알아보자!
  • Unreal Engine 코딩 규범에 대해 알아보자
seonhwan2547
seonhwan2547
seonhwan2547 님의 블로그 입니다.
  • seonhwan2547
    seonhwan2547 님의 블로그
    seonhwan2547
  • 전체
    오늘
    어제
    • 분류 전체보기 (80)
      • Unreal Project (17)
        • Khazan 모작 프로젝트 (2)
        • Unreal Study (10)
        • Blueprint (5)
      • Directx11 Project (11)
        • Thymesia 팀 프로젝트 (8)
        • Kaku Ancient Seal 개인 프로젝트 (2)
        • Thymesia Animation Tool 개발 (0)
      • Algorithm (6)
        • Binary_Search (2)
        • Greedy (1)
        • Dynamic Programming (1)
        • A-star (1)
      • Coding Test (31)
        • Brutal Force (2)
        • Sort (5)
        • DFS (3)
        • Binary_Search (4)
        • BFS (6)
        • Hash (2)
        • Dynamic Programming (6)
        • Greedy (1)
        • BackTracking (1)
        • Binary_Tree (1)
      • STL Container (1)
        • unorded_set (0)
        • priority_queue (1)
      • C++ 공부 및 몰랐던점 (8)
        • Smart pointer (1)
      • Visual Studio 설정관련 공부 (1)
      • Console Project (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 블로그 소개
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    CodingTest
    GameProgramming
    Unreal Engine
    Game Programming
    hash
    blueprint
    Unreal
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
seonhwan2547
Unreal Input Mapping 이란?