スコア情報や音など、どの場面でも利用したい情報を保持する場合、どのように実装をすればよいのでしょうか? この色々なデータを管理するマネージャークラスを作る際に、シングルトンを利用すれば実現できます。 今回は、このシングルトンの使い方を紹介します。
シングルトンの実装
シングルトンは、デザインパターンの一つで、どこからでも同じスクリプトの処理を呼び出すことができます。 Unityで実装すれば、Sceneをまたいでデータを保持したりすることもできます。 [c] //DataManagerの部分は、シングルトンにするクラス名を指定して下さい。 static public DataManager instance void Awake () { if (instance == null) {
instance = this;
DontDestroyOnLoad (gameObject);
} else {
Destroy (gameObject);
}
} [/c]
これで完了です。
実際の利用方法
他のクラスでは以下のようにして利用をします。 [c] DataManager.instance.score = 100;
//メソッド呼び出し DataManager.instance.SetScore (100);
[/c]
様々な方法がある
今回の実装だけではなく、シングルトンのデザインパターンには色々なやり方があります。
- Unity C# シングルトンパターンの実装 - Qiita
- 【Unity】なんちゃらManagerクラスを作ろう(シングルトン) | naichilab - Android iOSアプリ開発メモ
- Unityで少しだけ高速なシングルトン(Singleton) - テラシュールブログ
是非こちらも参考にして実装をしてみてください。
![]() | Unityで神になる本。 廣 鉄夫 オーム社 2015-06-26 売り上げランキング : 43059 Amazonで詳しく見る |