fc2ブログ

凛(kagring)のUE5/UE4とゲーム制作と雑記ブログ

2016 年から UE4 / 2021年から UE5 を触り始めました。勉強したもののメモ用ブログです。ゲーム制作に関するメモや雑記とか色々あります。C++ での Qt、Unity もほんの少しあります。

PREV | PAGE-SELECT | NEXT

≫ EDIT

UE5/UE4 C++でゲームモード(GameMode)を継承した独自のクラスを作る(AGameModeBase、UGameplayStatics::GetGameMode)

C++でゲームモード(GameMode)を継承した独自のクラスを作る方法です。

公式ドキュメントはこちら。

・AGameModeBase
https://docs.unrealengine.com/4.27/en-US/API/Runtime/Engine/GameFramework/AGameModeBase/

C++で独自のゲームモード(GameMode)クラスを作成する場合は「AGameModeBase」を継承します。
こんな感じですね。
#include "GameFramework/GameModeBase.h"

// AGameModeBaseを継承した独自のゲームモード(GameMode)クラスを作成
UCLASS()
class ANewGameMode: public AGameModeBase
{

GENERATED_BODY()
public:
// コンストラクタ
ANewGameMode();
};

あとは基本的に「AGameModeBase」に関するイベントを記述するだけなので難しいことはないのかなと思います。

この作成した独自のゲームモード(GameMode)クラスを取得するには
「UGameplayStatics::GetGameMode」関数を使います。

「UGameplayStatics::GetGameMode」関数は素の「AGameModeBase」を取得する関数なので
独自のゲームモード(GameMode)クラスにキャストしてあげます。

TObjectPtr< ANewGameMode> aGameMode = Cast< ANewGameMode>(UGameplayStatics::GetGameMode(this));

こんな感じの記述になります。

ゲームを作る時には独自のクラスを作ることは結構必須だと思うので覚えておきたいですね。

| UE5 | 10:00 | comments:0 | trackbacks:0 | TOP↑

COMMENT















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/760-efdd2e60

TRACKBACK

PREV | PAGE-SELECT | NEXT