개발나라 스용공주

[언리얼엔진] 3인칭 플레이어의 움직임을 키보드로 조작하기 Controlling the movement of the third person player with the keyboard 본문

개발일지/UNREAL ENGINE

[언리얼엔진] 3인칭 플레이어의 움직임을 키보드로 조작하기 Controlling the movement of the third person player with the keyboard

스용공주 2023. 7. 19. 06:00
728x90
728x90

이번 글은 언리얼엔진에서 3인칭 캐릭터를 레벨에 배치한 후 그 캐릭터를 키보드의 특정 키를 누르면 설정된 방향에 맞게 움직이는 것을 구현해볼 것 입니다.

 

우선 레벨에 3인칭 플레이어를 만들어 배치해야합니다.

3인칭 플레이어는 카메라가 플레이어를 일정 거리에서 비추고 있는 모습이 보여지는 것이 특징이므로 카메라를 만들고 플레이어를 배치해야할 것 입니다.

 

먼저 블루프린트 클래스를 만들어줍니다

 

블루프린트 클래스에서 부모클래스로 Character를 선택해줍니다.

뷰포트 화면으로 들어가 좌측에 Mesh를 선택해준 뒤 우측 디테일바에서 메시 안에서 SK_Mannequin을 선택해줍니다.

그리고 마네퀸의 방향과 위치를 뷰포트 화면에 있는 큐브와 하늘색 화살표를 참고하여 아래 사진과 같이 맞춰줍니다.

 

3인칭 시점으로 플레이어 마네퀸을 바라보기 위해 카메라를 만들어보겠습니다.

아래 사진과 같이 좌측에서 컴포넌트 추가에서 SpringArm과 Camera를 추가해줍니다.

그리고 원하는 위치에 배치되도록 설정해줍니다.

 

위의 과정들을 다 설정해주었다면 뷰포트에서 이벤트그래프로 넘어가 블루프린트 노드를 작성해줄 것 입니다.

그 전에 프로젝트 세팅에 들어가 '프로젝트 세팅 > 엔진 > 입력' 순으로 들어가줍니다.

 

축 매핑에서 +를 눌러주어 축 매핑을 2개 추가해주고 MoveForward라는 이름과 MoveLeftRight라는 이름의 축 매핑을 만들어줍니다.

 

- MoveForward : 플레이어를 앞뒤로 움직이게 하는 역할

(키보드의 W와 S로 설정해줄 것이며  W가 앞으로 가는 것이기 때문에 Scale에 1.0를 S는 뒤로 가는 것이기 때문에 Scale -1.0를 넣어준다.)

- MoveLeftRight : 플레이어를 좌우로 움직이게 하는 역할

(키보드의 A와 D로 설정해줄 것이며 A는 좌측으로 가는 것이기 때문에 Scale를 -1.0로 D는 우측으로 가는 것이기 때문에 Scale를 1.0로 넣어준다.)

 

* Scale은 X, Y 좌표 기준으로 생각하여 입력해주었다.

 

 

그리고 다시 BP_Player로 돌아와 이벤트그래프 블루프린트 노드를 작성해보겠다.

아래 사진과 같이 노드를 작성해준 뒤 컴파일 후 플레이 실행시키면 실행한 키보드 키에 맞춰 움직이게 된다.

728x90
728x90
Comments