Language:
Page Info
Engine Version:
The translation of this page is out of date. Please see the English version for the latest version of the page.

ゲームを保存する

SaveGame オブジェクトを使用すると、ゲーム内で簡単に保存とロードが設定できます。

BlankSaveGame.png

SaveGame オブジェクトを異なる区画を持った箱だと考えてください。変数を作成して、それぞれの区画が特定の情報要素を格納するように設定します。例えば、 プレイヤーのスコアやプレイヤー名を保存する変数を作成することができます。情報を SaveGame オブジェクトから、Character、PlayerController、GameMode など、別のクラスへ転送できます。 その手順として、まずインスタンスを作成するか、SaveGame をコピーします。

SaveGameVariables.png

次に、例えば PlayerController からプレイヤーのスコアとプレイヤー名の値を受け取り、SaveGame オブジェクトの中の一致する値の中へ格納します。

StoreVariables.png

SaveGame オブジェクトは、ハードドライブ上に保存されるまでこれらの値を維持します。

StoredVariables.png

最後に、SaveGameToSlot を使ってハードドライブ上のファイルに SaveGame オブジェクトを保存できます。SaveGameToSlot に名前が付いているので、 他のプログラムでドキュメントや新規ゲームを保存するのを同じ操作です。デフォルトでは、保存対象のゲームは「Saved\SaveGames」フォルダの「.sav」ファイルに格納されます。 SaveGameToSlot にユーザー ID を入れると、今後ロードする情報を探す場合に役立ちます。

SaveGame オブジェクトから情報をロードする操作も、情報を保存する場合の逆なので簡単です。ファイル名とユーザー ID を入力値として受け取る LoadGameFromSlot 関数を 使います。LoadGameFromSlot を使ってハードドライブから情報をロードすると SaveGame オブジェクトの新規コピーが作成されます。

StoredVariables.png

このオブジェクトを使って、ゲーム内の他のオブジェクトとアクタへ情報をコピーできます。このサンプルでは、プレイヤーが保存したゲームを開き、 再びプレイを開始した時に行うように、PlayerController にプレイヤーのスコアと名前をロードします。

LoadingVariables.png

設定

ブループリントまたは C++ でゲームを保存する方法については、次のいずれかを参照してください。