Unreal 게임 개발 과정 TIL

Today's I Learning

본캠프 TIL

06.16 Unreal 본캠프) 4번 과제 Pawn 클래스 3D 캐릭터 만들기 (1)

Sunlight__ 2026. 6. 16. 22:45

 

 

오늘 한 것

 

  - Pawn 클래스 생성

 : 언리얼 에디터에서 "New C++ Class" 에서 Pawn 클래스를 만들어준다.

 

- 컴포넌트 추가

 : CapsuleComponent

   SkeletalMeshComponent

   SpringArmComponent

   CameraComponent

 - 계층 구조 설정

 : 캡슐 컴포넌트를 루트 컴포넌트로 설정해준 뒤 나머지 컴포넌트들을 "SetupAttachment"를 통해 루트 컴포넌트에 부착해준다.

Player.h 파일에 선언
Player.cpp 파일에서 정의

 - 플레이어를 레벨에서 사용하기 위해선 GameMode가 필요하다.

 : "New C++ Class" 로 GameModeBase를 만들어준다.

GameModeBase.h
GameModeBase.cpp

 

 - Input Action 및 IMC 추가

 : 에디터 내에서 IA_Move, IA_Look, IMC_Player 를 생성해준 뒤 설정해준다.

 

 - PlayerController 추가

 : EnhancedMappingContext를 사용하기 위해 "New C++ Class" 에서 PlayerController를 만들어주고 선언해준다. 

좌) PlayerController.h 우) PlayerController.cpp

- 플레이어 입력 바인딩

 : 플레이어의 입력을 바인딩 해주어 실제로 컨트롤러에서 입력하면 움직일 수 있게 해준다.

Player.h
Player.cpp

- Move 및 Look 함수 구현

 : 각 함수가 어느 방향으로 움직일지 설정해준다.

Player.cpp

 - BP_PlayerController 생성 후 IA 할당

 : BP_PlayerController를 생성한 뒤 Input에 각각 해당하는 Input Action 및 Input Mapping Context를 할당해준다.

 

 

 - 발생한 문제

1) #include 위치 문제

 : GameModeBase.cpp 에서 #include 라이브러리를 가져오다 순서를 바꾸어 놓아 빌드가 되지 않았다.

   반드시 본인의 .h 파일이 가장 위에 와야 한다.

좌) 오류 코드 우) 수정 코드

 

 

 - 중요하다고 생각한 것

 1) 헤더파일 선언

 : 각 컴포넌트들을 선언하기 위해선 반드시 전방에 해당 헤더 파일들을 선언해 주어야 한다.