凛(kagring)のUE4とUnityとQt勉強中ブログ

2016 年から UE4 を触り始めました。勉強したもののメモ用のブログです。C++ での Qt、Unity も少しあります。

PREV | PAGE-SELECT | NEXT

≫ EDIT

UE4 Game Mode と Game Mode Base について(Game Mode、Game Mode Base、Get Game Mode)

「Game Instance」について調べていて、「Game Mode」なるものを見つけました。

こちらですね。

・GameMode、GameInstanceなどの違いについて
http://imoue.hatenablog.com/entry/2016/05/24/223150

GameMode マップ切り替えまで レベルごとに1つ サーバーにだけ存在 プロジェクトのデフォルトとは別にレベルごとの設定も出来る


あまり「Game Mode」の使い方がわかっていないのですが
バージョンが更新され「Game Mode」「Game Mode Base」というものに分離されたようです。
この更新によって、「Game Mode」の扱いが少し変わったみたいですね。

「Game Mode」と「Game Mode Base」の違いについてはこちらに詳しく書いてありました。

・UE4 Game ModeとGame Mode Baseの違いについて
http://unrealengine.hatenablog.com/entry/2017/01/30/220000

Get Game Modeで取得できるのはGame Mode Baseクラス
表題の通り、問題は"Get Game Mode"ノードを使った時です。4.13以前はこのノードで"Game Mode"クラスのリファレンスを取得できました。が、4.14からは"Game Mode Base"のリファレンスになっています。

これが扱いとしては一番あれ?ってなるところですね。

実際こんな感じのことが自分の方でもありました。

原因としては今まで「Get Game Mode」が「Game Mode」を返していたのに
今は「Game Mode Base」を返すようになったので、実行できないノードがあったようです。

というわけで、解決法としては「Game Mode」を継承した「Game Mode」クラスを作成し、
継承したクラスにキャストしてから実行する。といったもののようです。

よく使うクラスに存在する「Game Mode Base」ではなく、
「Game Mode」クラスを継承
して新しい「Game Mode」クラスを作成しましょう。
GameMode000.png

そうすると、「Get Game Mode」で取得した「Game Mode」をキャストすることができ、
「Game Mode」を入力に使ったノード(今回は Restart Game ノード)を実行することができます。
GameMode001.png

「Game Mode」自体まだまだ理解できてないので、徐々に理解していきたいですね。
スポンサーサイト

| UE4 | 16:09 | comments:0 | trackbacks:0 | TOP↑

COMMENT















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/291-b20c2be9

TRACKBACK

PREV | PAGE-SELECT | NEXT