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 を保存します。

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信