futurelabunseen / B-JeonganLee

UNSEEN 2nd Term Learning and Project Repo.
5 stars 0 forks source link

1강: 언리얼 엔진 게임 제작 기초 #17

Closed fkdl0048 closed 4 months ago

fkdl0048 commented 4 months ago

1강: 언리얼 엔진 게임 제작 기초

언리얼 게임 프레임웍

기본적으로 게임을 만들기 위해서는 게임이라는 시스템이 어떻게 구성되어 있는지를 이해해야 한다. 이를 쉽게 게임 프레임웍이라고 부르는데, 언리얼은 이것을 기본적으로 제공한다.

이를 게임플레이 프레임웍(Gameplay Framework)이라고 부르는데, 이는 게임의 기본적인 구조를 제공한다. 이를 통해 게임의 기본적인 구조를 파악하고, 이를 커스터마이징하여 게임을 만들 수 있다. (각 구성요소를 파악하고 이를 확장하면서 제작)

유니티는 이러한 프레임웍이 없기 때문에 모든 베이스를 다시 만들거나 계속해서 생기는 라이브러리에 대해서 학습해야 함.

월드(World)

게임 모드(GameMode)

유니티로 따지면 GameObject로 보면 될 것 같다.

기믹(Gimmick)

유니티로 보면 콜라이더 컴포넌트 정도로 생각된다.

플레이어(Player)

처음부터 멀티플레이의 가능성을 열어놔서 설계 자체가 로그인, 0번 플레이어와 같은 형태가 생긴 것 같다.

폰(Pawn)

게임의 제작 과정

주어진 ArenaBattle은 3단계까지 진행되어 있다.

제작과정은 가급적 블루프린트를 사용하지않고, C++로만 제작한다.

ArenaBattle

#include "Game/ABGameMode.h"

AABGameMode::AABGameMode()
{
    static ConstructorHelpers::FClassFinder<APawn> ThirdPersonClassRef(TEXT("/Game/ThirdPerson/Blueprints/BP_ThirdPersonCharacter.BP_ThirdPersonCharacter_C"));
    if (ThirdPersonClassRef.Class)
    {
        DefaultPawnClass = ThirdPersonClassRef.Class;
    }

    static ConstructorHelpers::FClassFinder<APlayerController> PlayerControllerClassRef(TEXT("/Script/ArenaBattle.ABPlayerController"));
    if (PlayerControllerClassRef.Class)
    {
        PlayerControllerClass = PlayerControllerClassRef.Class;
    }
}

정리