ステージ制のアクションゲームを作成しています。
残機を管理するため、GameInstanceにinteger型の変数を作り(デフォルト値6)、
タイトル画面(単独のレベル)で初期化(ここでも6を指定)します。
タイトル画面からステージ1に遷移します。
残機数はGameModeからHUDを呼び出し、そこで表示しています。
エディタ上ではきちんと反映され、残機6の状態でステージ1が始まりますが、
パッケージ化すると、なぜかステージ1開始時に残機0になってしまいます。
ステージ1開始時にわざわざGameInstanceを呼び出し、再度セットするなどしてみたものの、変化はありませんでした。
このようなエディタとパッケージ後の挙動の違いを解消する手法をご存知でしたらご教示いただきたいと思います。
Developビルドでデバッグ表示を仕込んで調べたところ、パッケージ化した時のみ、そもそもタイトルの画面(最初のレベル)でGameInstanceで設定した値が正しく取得できていないことがわかりました。
nullponull
(nullponull)
3
最新版でも同じ状態でしょうか?
今までそのような動作を見たことが無いので、サンプルがあればアップして頂けると助かります。
Ken.Kuwano
(Ken.Kuwano)
4
ご利用されているEngine Versionが古いため既に解決済みかもしれませんが、Gameinstanceの情報が欠落したり意図せず書き換わるような現象は今のところ聞いたことがありません。その値が意図しないタイミングで設定されていたりしないかご確認下さい。新しいEngine Versionでも問題が発生するようでしたら、その問題点をこちらにご報告下さい。
このようなエディタとパッケージ後の挙動の違いを解消する手法をご存知でしたらご教示いただきたいと思います。
Visual StudioのDevelopment構成からの起動や、既に試されているかと思いますが特定の値をログ出力するような方法が有効です。