Skip to content
Mizunitani Ren edited this page Feb 11, 2016 · 7 revisions

できるだけシングルトンは使わずに、代替手段を探すこと。

シングルトンは どこからでも呼び出される可能性がある という事を意識しないといけない。 そのため, タイトル, ゲームプレイ, オプション画面など,全シーンで共通のものだけをSingletonにすること. Playerなど, 特定のシーン以外(タイトルとか)でインスタンスが生成されると困るものはシングルトンにすべきではない。 他にも,以下のようなnullチェックが必要となる場合, それはそのクラスをシングルトンにしたのが間違い。

if( Hoge.Instance != null)
{
   Hoge.Instance.Update()
}

今回のゲームでシングルトンを作るときの注意点

  • 一つのゲームオブジェクトにシングルトンのスクリプトは一つにする。
  • シングルトンがアタッチされたゲームオブジェクトはプレハブ化し, Resources/Prefab/Singletons/クラス名.prefab として保存する.
  • Awakeは宣言しない。かわりにOnInitializeをoverrideすること.

かならず, インスタンスが存在することを保証するために, 存在しない場合プレハブからロードするので、上記の項目を守ること。

Clone this wiki locally