득이공간

[언리얼 게임 프레임웍의 이해] 5장. 언리얼 게임의 완성 본문

GP/UE5

[언리얼 게임 프레임웍의 이해] 5장. 언리얼 게임의 완성

쟁득 2024. 2. 19. 22:58
해당 게시물은 이득우 교수님의 '언리얼 게임 프레임웍의 이해' 강의를 수강하며
학습한 내용을 개인적으로 정리한 글입니다.

📌 목차 - 5장. 언리얼 게임의 완성

5-1. 헤드업디스플레이의 구현
5-2. 게임플로우 다듬기
5-3. 게임의 완성


📌 5-1. 헤드업디스플레이의 구현

1. 플레이어 컨트롤러에서 헤드업디스플레이의 생성과 표시
2. 컴포넌트, 액트, 위젯의 초기화 프로세스의 이해
3. 언리얼 리플렉션을 활용한 UI 데이터의 유연한 연동

 

* 이번 강의에서 다룬 게임프레임웍 기능
- 플레이어: HUD

* 헤드업디스플레이의 생성 과정
- 헤드업디스플레이(HUD): 플레이어 컨트롤러에 의해 제작되고 관리되는 UI 객체
- HUD의 구현은 위젯을 생성하고 이를 플레이어 뷰포트에 띄우는 과정으로 생성된다.
- 이렇게 만들어진 위젯은 자신을 소유한 플레이어 컨트롤러에 접근할 수 있다.
- Player Controller <- GetOwningPlayer() / CreateWidget() -> HUD Widget

* 초기화 프로세스의 정리
- 컴포넌트, 액터, UI 위젯의 초기화 과정
1. 컴포넌트: InitializeComponent
2. 액터: PostInitializeComponents
3. 컴포넌트 & 액터: BeginPlay
4. 액터 -> UI위젯: CreateWidget -> NativeOnInitialized
5. 액터 -> UI위젯: AddToViewport -> NativeConstruct


📌 5-2. 게임플로우 다듬기

1. 죽는 상태에 대한 플레이어와 NPC의 설정
2. 전체 게임 구성 요소의 이해
3. 캐릭터 데이터 조정과 다양한 아이템 설정 및 구현

 

* 이번 강의에서 다룬 게임프레임웍 기능
- 플레이어: 입력, HUD
- 폰: 위젯
- 데이터: 애셋, 테이블

* 게임 구성 요소의 분류
- 세 개의 레이어를 기준으로 게임을 구성하는 다양한 기능의 구현
- 게임: Character, Gimmick, Game <- Interface
- 미들웨어: AI, Item, Player, CharacterStat, Animation, Prop, UI -> Interface
- 데이터: GameData


📌 5-3. 게임의 완성

1. 게임 모드를 활용한 게임 규칙의 완성
2. 전용 이벤트 함수를 활용한 블루프린트와의 연동
3. 게임 데이터의 저장 방식의 이해
4. 게임의 최종 빌드

 

* 이번 강의에서 다룬 게임프레임웍 기능
- 게임: 모드, 상태
- 플레이어: 상태
- 데이터: 저장

* 게임 모드
- 멀티플레이를 포함해 게임에서 유일하게 존재하는 게임의 심판 오브젝트
- 최상단에서 게임의 진행을 관리하며, 게임 판정에 관련된 중요한 행동을 주관하는데 적합하다.
- 다양한 게임 규칙을 적용할 수 있도록 핵심 기능과 분리해 설계하는 것이 바람직하다.
- 게임의 상태와 플레이어의 상태를 별도로 저장할 수 있는 프레임웍을 제공한다.
- 최상단 게임 레이어: GameMode, GameState, PlayerState
- 게임 레이어: Character, Gimmick
- 미들웨어 레이어: ~