3テラバイト

プログラム関連備忘録サイト。主にゲーム。

Unity

Unityで簡単なセーブ機能を実装できるPlayerPrefsの使い方

投稿日:

プラットフォームごとの保存先が公式ドキュメントに記載されています。
Windowsはレジストリに保存を行うため、レジストリにデータを保存したくない場合は別の実装にする必要があります。

確認環境

  • Unity 2019.4.28f1

コード

Float型の値の設定 / 取得

Keyに設定する値の任意のキーを文字列で指定、ValueにはFloat型で保存する値を指定します。

PlayerPrefs.SetFloat(Key, Value);

Keyに取得する値のキーを渡すと、そのキーの値が返されます。
第二引数にFloat型の数値を指定すると、キーが存在しない場合に返すデフォルトの値を指定可能です。

PlayerPrefs.GetFloat(Key);

Int型の値の設定 / 取得

Keyに設定する値の任意のキーを文字列で指定、ValueにはInt型で保存する値を指定します。

PlayerPrefs.SetInt(Key, Value);

Keyに取得する値のキーを渡すと、そのキーの値が返されます。
第二引数にInt型の数値を指定すると、キーが存在しない場合に返すデフォルトの値を指定可能です。

PlayerPrefs.GetInt(Key);

String型の値の設定 / 取得

Keyに設定する値の任意のキーを文字列で指定、ValueにはString型で保存する値を指定します。

PlayerPrefs.SetString(Key, Value);

Keyに取得する値のキーを渡すと、そのキーの値が返されます。
第二引数にString型の数値を指定すると、キーが存在しない場合に返すデフォルトの値を指定可能です。

PlayerPrefs.GetString(Key);

キーの存在確認

Keyに値のキーを渡すと、そのキーのデータが存在するかをbool値で返します。

PlayerPrefs.HasKey(Key)

変更の保存

PlayerPrefs.Save()

データの削除

指定キーを削除します。

PlayerPrefs.DeleteKey(Key);

すべてのキーと値を削除します。

PlayerPrefs.DeleteAll();

Unityエディタ上から削除

開発時にデータを削除したい場合は、UnityエディタのメインメニューEdit > Clear All PlayerPrefs.からすべてのPlayerPrefsを削除することができます。

リンク

UnityEngine.PlayerPrefs – Unity スクリプトリファレンス
https://docs.unity3d.com/ja/current/ScriptReference/PlayerPrefs.html

-Unity


comment

メールアドレスが公開されることはありません。

関連記事

no image

UnityでuGUIのButtonサイズを子のTextのサイズに自動で合わせる

こんにちは、今日はUnityのuGUIでButtonのサイズを、子オブジェクトのTextのサイズに合わせて変更する方法についてまとめていきます。 確認環境 Version 2018.4.15f1 実装 …

no image

Unityのメモリ使用量をスクリプトで取得する

こんにちは、今日はUnityのメモリ使用量をスクリプトで取得する方法についてまとめていきます。 確認環境 Unity 2018.4.15f1 メモリ使用量取得 Unityがシステムから予約しているメモ …

no image

Unityの再生・停止・ステップ実行のショートカットキー

こんにちは、今日はUnityの再生・停止・ステップ実行のショートカットキーについてまとめていきます。 確認環境 Unity 2018.4.15f1 再生・停止・ステップ実行のショートカットキー ゲーム …

no image

Unity – プラットフォームやエディタ等の実行環境ごとに処理を切り分ける方法

こんにちは、今日はUnityでWindows、Mac、Android、iOS等の各プラットフォームごとや、エディタ上で実行されている場合にスクリプトの処理を切り分ける方法についてまとめていきます。 確 …

no image

Unityエディタ上で使用できるダイアログを表示する方法

EditorUtility.DisplayDialog関数でダイアログの表示が可能です。 bool isOK = EditorUtility.DisplayDialog("Title&quo …