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で数値を指定範囲に収める

確認環境 Unity 2018.4.15f1 数値を指定範囲に収める Clamp public static int Clamp(int value, int min, int max); publi …

no image

UnityのManaged Memoryサイズをスクリプトから取得する

こんにちは、今日はUnityのManaged Memoryサイズをスクリプトから取得する方法についてまとめていきます。 Profiler.GetMonoUsedSizeLong() Profiler. …

no image

Unity – キー入力を取得する方法まとめ

こんにちは、今日はUnityでキー入力を取得する方法についてまとめていきます。 確認環境 Unity 2018.4.15f1 キー入力の取得 https://docs.unity3d.com/ja/c …

no image

Unityでマウスオーバーしているウィンドウを最大化するショートカットキー

こんにちは、今日はUnityでマウスオーバーしているウィンドウを最大化するショートカットキーについてまとめていきます。 確認環境 Unity 2018.4.15f1 マウスオーバーしているウィンドウを …

no image

Unity2020でMapboxを使用する

この記事ではエラー回避のため、SDKからAR関連パッケージを除外してインポートを行います。セットアップ完了まで動作確認済ですが、AR以外にも動作に影響している可能性があります。 確認環境 Unity …