1.3 - 로그 메시징 추가

게임에 로그 메시징 추가법을 배워봅니다.

Choose your operating system:

Windows

macOS

Linux

프로젝트에 코드 추가를 시작하기 좋은 방법은, FPSGameMode 에 로그 메시지를 추가하는 것입니다. 로그 메시지는 개발 도중 코드를 점검하고 디버깅하기에 정말 좋습니다. 이 글에서는, 로그 메시지를 사용하여 언리얼 엔진에 기본 제공되는 기본 Game Mode 가 아닌, FPSGameMode 가 실제 사용중인지 점검해 봅니다.

FPSProjectGameMode 헤더 파일

  1. Solution Explorer 에서 FPSProject > Source > FPSProject 를 펼칩니다.

    InterfaceFile.png

  2. FPSProjectGameMode.h 파일을 더블클릭하여 FPSGameMode 클래스의 헤더 파일을 엽니다.

  3. 클래스 선언은 다음과 같을 것입니다:

    UCLASS()
    class FPSPROJECT_API AFPSGameMode : public AGameModeBase
    {
        GENERATED_BODY()
    };
  4. AFPSProjectGameMode 생성자 선언 아래 다음과 같은 함수 선언을 추가합니다:

    virtual void StartPlay() override;

    이 함수 선언은 ( AActor 클래스에서 상속된) StartPlay() 함수를 덮어써서 게임플레이가 시작되면 로그 메시지를 출력하도록 할 수 있습니다.

  5. FPSProjectGameMode.h 는 다음과 같을 것입니다:

    // Fill out your copyright notice in the Description page of Project Settings.
    
    #pragma once
    
    #include "GameFramework/GameModeBase.h"
    #include "FPSProjectGameMode.generated.h"
    
    /**
     * 
     */
    UCLASS()
    class FPSPROJECT_API AFPSProjectGameMode : public AGameModeBase
    {
        GENERATED_BODY()
    
        virtual void StartPlay() override;
    };
  6. Visual Studio 에서 헤더 파일을 저장합니다.

FPSProjectGameMode CPP 파일

  1. Solution Explorer 에서 FPSProjectGameMode.cpp 파일을 찾습니다 ( FPSProject > Source > FPSProject ).

    ImplementationFile.png

  2. FPSProjectGameMode.cpp 에 더블클릭하여 FPSGameMode 클래스에 대한 구현 파일을 엽니다.

  3. AFPSProjectGameMode 생상자 아래 다음과 같은 StartPlay() 함수 코드를 추가합니다.

    void AFPSProjectGameMode::StartPlay()
    {
        Super::StartPlay();
    
        if (GEngine)
        {
            // 디버그 메시지를 5 초간 표시합니다.
            // "키" (첫 번째 인수) 값을 -1 로 하면 이 메시지를 절대 업데이트하거나 새로고칠 필요가 없음을 나타냅니다.
            GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Yellow, TEXT("Hello World, this is FPSGameMode!"));
        }
    }

    StartPlay() 가 이제 게임플레이가 시작되면 화면에 노랑색으로 새로운 디버그 메시지 (Hello World, this is FPSGameMode!) 를 5 초간 출력합니다.

  4. FPSProjectGameMode.cpp 는 이제 다음과 같을 것입니다:

    // Fill out your copyright notice in the Description page of Project Settings.
    
    #include "FPSProject.h"
    #include "FPSProjectGameMode.h"
    
    void AFPSProjectGameMode::StartPlay()
    {
        Super::StartPlay();
    
        if (GEngine)
        {
            // 디버그 메시지를 5 초간 표시합니다.
            // "키" (첫 번째 인수) 값을 -1 로 하면 이 메시지를 절대 업데이트하거나 새로고칠 필요가 없음을 나타냅니다.
            GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Yellow, TEXT("Hello World, this is FPSGameMode!"));
        }
    }
  5. Visual Studio 에서 CPP 파일을 저장합니다.

언리얼 엔진 문서의 미래를 함께 만들어주세요! 더 나은 서비스를 제공할 수 있도록 문서 사용에 대한 피드백을 주세요.
설문조사에 참여해 주세요
취소