1.3 - ログ メッセージを追加する

ゲームにログ メッセージを追加する方法を学びます。

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. (Project Settings の Description ページに著作権情報を入力してください) 
    #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)
    
        {
            // Display a debug message for five seconds. (デバッグ メッセージを 5 秒間表示)  
            // The -1 "Key" value (first argument) indicates that we will never need to update or refresh this message. ( -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. (Project Settings の Description ページに著作権情報を入力してください) 
    #include "FPSProject.h"
    
    #include "FPSProjectGameMode.h"
    void AFPSProjectGameMode::StartPlay()
    
    {
        Super::StartPlay();
    if (GEngine)
    
        {
            // Display a debug message for five seconds. (デバッグ メッセージを 5 秒間表示)  
            // The -1 "Key" value (first argument) indicates that we will never need to update or refresh this message. ( -1 のキー値 (最初の引数) は、このメッセージを更新、リフレッシュする必要がないことを示しています) 
            GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Yellow, TEXT("Hello World, this is FPSGameMode!"));
        }
    }
  5. CPP ファイルを Visual Studio を保存します。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback