【Unity】SessionStateで値を保存する

SessionStateはエディタ起動時のみ値を保持する仕組みです。 エディタ拡張時、SerializeFieldなどで保持しなくても良い重要度の低い値を保存するときに便利に使えます。

保存

保存するKeyを定義します。 これは取得する際に必要になります。

string key = "Save_Key";
bool isHoge = false;
SessionState.SetBool(key, isHoge);

取得

Keyを使って取得します。 第2引数はデフォルトの値になります。

var isHoge =  SessionState.GetBool(key, false);

種類

上記ではBoolを使いましたが、次の種類の型に対応をしています。

  • Bool
  • Float
  • Int
  • Array
  • String
  • Vector3