1. 키보드 입력 이벤트를 통한 입력 데이터 받아오기

- 열거형과 레벨 블루프린트를 통해 입력 키 받아오기

 

1) 열거형 생성하기: 오른쪽 마우스 클릭 > 블루프린트 > 열거형 선택

콘텐츠 브라우저에서 오른쪽 마우스 클릭 > 블루프린트 > 열거형

2) 만든 열거형을 열어 입력 받을 키 설정

- 이너머레이터 추가 버튼을 클릭해 열거기를 추가하여 원하는 단축키를 설정해주고 설명에 어떤 키인지 작성해줍니다.

 

3) 레벨블루프린트에서 열거형에 정의한 입력 키에 따른 행동 설정

레벨 > 레벨 블루프린트 열기 클릭

(1) 레벨 블루프린트에서 키보드 입력에 대한 이벤트함수 호출 

- 1을 검색해 Keyboard Events에 있는 1을 가져옴

 

(2) 해당 노드의 디테일 창에서 입력키 설정

- 빨간 네모칸에 있는 키보드 모양을 눌러 원하는 키(ex.T)를 누르면 해당 키로 변경됨

 

(3) 키보드 이벤트가 어떨 때 실행될지 노드 설정

ex) T 키가 눌렸을 때 'Press T' 를 , T키를 눌렀다 뗐을 때 'Release T' 를 찍기

 

 

Pressed: 설정한 입력키가 눌렸을 때

 

Released: 설정한 입력키가 눌렸다 떼어졌을 때

 

 

 

 

 

 

 

 

< 결과 >

- T키를 눌렀을 때 : Press T / T키를 뗐을 때 : Release T

- Print String은 Stack 형식으로 데이터가 생김: T키를 먼저 눌렀기 때문에 Press T가 Release T 보다 아래에 찍힘


2. 프로젝트 설정에서 입력 데이터 세팅하기

- UE4 버전까지는 사용했지만 UE5 로 업그레이드 되면서 폐기될 기능임


3. 향상된 입력 시스템을 이용한 입력 데이터 받아오기

* '향상된 입력 시스템' 을 사용하기 위해 사전 준비

- 편집 > 플러그인 > Enhanced Input 이 설치되어있는지 확인

 

- 프로젝트 설정 > 입력 에서 Default Classesd의 기본 플레이어 입력 클래스를 'EnhancedPlayerInput' 으로 설정

 

1) 입력키 설정을 위한 입력액션 설정

- 입력액션: 입력 장치(키보드, 마우스, 게임패드 등)에서 전달되는 신호의 처리 방법 결정

 

(1) 입력액션의 값 타입에 따라 액션의 동작 결정

- Digital(bool)

: 버튼이 눌렸는지(True) / 떼졌는지(False) 구분 ex) 캐릭터의 점프, 공격, 문 열림/닫힘 등을 구현

- Axis 1D(float)

: 1차원 축 값을 나타내는 float 값( -1.0 ~ 1.0 의 값) 

  - 사용자가 입력한 데이터의 누름 강도를 측정해 세밀한 조절 가능(제일 세게 누르면 1.0)

: 축 기반으로 연속적인 값을 처리할 때 ex) 캐릭터의 앞/뒤 이동

- Axis 2D(Vector2D)

: 2차원 좌표에서의 입력 처리 - 방향 입력이 필요한 상황에서 사용

: 주로 마우스, 키보드, 조이스틱의 입력 중 XY축 값 나타낼 때 사용 ex)  캐릭터의 시야 / 이동 변경

- Axis 3D(Vector3D)

: 3차원 공간에서의 입력 처리 - 3D 환경에서의 이동, 물체의 회전 방향 제어에 사용 ex) 드론, 비행기의 이동 제어

 

2) 입력액션에서 설정한 키를 입력 매핑 컨텍스트에서 매핑하기

- 입력 매핑 컨텍스트: 특정 입력장치의 키나 버튼이 어떤 입력 액션을 트리거할지 지정

 

(1) 입력 매핑 컨텍스트에서 매핑할 입력 액션 선택하기

- + 버튼을 눌러 칸을 추가한 뒤 매핑할 입력액션 선택하기

 

(2) 추가한 입력액션에서 입력 받을 특정 키 세팅하기

- 입력액션에서 화살표를 눌러 입력 받을 키 데이터 추가하기 ex) W 키 추가하기

 

(3) 추가한 특정 키의 행동 설정하기

ex1) W키를 누르면 위로 이동

- 모디파이어: 특정 입력 키에 대해 입력 데이터를 변형하는 기능(축 값에 대한 설정)

- 모디파이어의 배열 엘리먼트 옆에 있는 + 버튼을 눌러 인덱스를 추가: 첫 번째로 적용할 값

- 스위즐 입력 축 값: 일부 키를 X축 대신 Y축으로 등록 → W키는 X축이 아니라 Y축으로 사용하겠다!

 

ex2) S키를 누르면 아래로 이동

- W키와 동일하게 인덱스 0번에 스위즐 입력 축 값으로 설정

- 모디파이어의 인덱스를 하나 더 추가해 '부정' 추가: 부정 = 음수로 이동

 

ex3) A키를 누르면 왼쪽으로 이동

- A키의 경우 X축의 음수로만 이동하면 되니 모디파이어의 0번 인덱스에 부정만 추가

 

ex4) D키를 누르면 오른쪽으로 이동

- D키는 X축의 양수로만 이동하면 되니 아무것도 해줄 필요 없음

728x90

'Unreal Engine🎮 > 블루프린트 - 이론' 카테고리의 다른 글

블루프린트와 C++ 연동  (0) 2025.05.27
캐릭터  (2) 2024.10.27
Pawn(폰)  (0) 2024.10.09
FPS와 Delta Time  (2) 2024.09.29
기하학(Geometry)  (5) 2024.09.25

+ Recent posts