【Unity】デバッグ情報を管理するクラスを作る

先週、突然パネルでポン風パズルゲームを作りたいと思い立ち、ちまちまと作っています。
下からブロックが上昇し、3つそろうと消えるゲームです。
youtu.be


制作中、デバッグ情報を別々のクラスに書いていました。
docs.unity3d.com

現状は各クラス別々にOnGUIを使っていました。

今後規模が大きくなるにつれてどこにGUIが使われているか管理しやすいように
デバッグを取りまとめるクラスを作成しました。

ソースコード

ソースコードこちら。
SingletonBaseはUnity公式のeBookのシングルトンパターンを自分で改善したものです。
resources.unity.com

使い方

ボタンを登録する場合、RegisterButtonの引数に表示したい名前とデリゲードを渡すだけ。 あとはDebugViewer側で自動的にGUIが描画されます。

/// <summary>
/// 初期化処理
/// </summary>
private void Start()
{
    // 色々初期処理~~~

    DebugViewer.Inst.RegisterButton("Restart",() =>
        {
            // リスタート処理~~~
        });
    });

}

参考にしたサイト

Unityリファレンス

MonoBehaviour-OnGUI() - Unity スクリプトリファレンス

eBook

Level up your code with game programming patterns