Unityでデバックをするときに「SRDebugger」というAssetを使うと色々なことが捗ります。 エディタ拡張をして独自にデバック機能を作る方法もあるのですが、この「SRDebugger」を拡張したほうが手間も工数も短縮して利用ができます。 私も当然の如く「SRDebugger」を使って、エラーの確認などを行っていたのですが、実際にどうやってプロジェクトへ導入されたか気になったので調べてみました。
SRDebugger
SRDebuggerは外部Assetです。 有料のAssetなのですが、その値段以上に便利に利用ができます。 まずこちらをダウンロードし、Unityのプロジェクトへインストールを行います。
導入
SRDebuggerを使うためにはどこかのタイミングで初期化を行う必要があります。 その際に次のコードを呼び出します。 [c] SRDebug.Init(); [/c]
設定
SRDebuggerをインストールすると、Winodw => SRDebuggerというメニューが増えています。
SettingWindowを開きます。
こちらでSRDebuggerの各種設定ができます。 特に触るところはないのですが、「Layout」の「Entry Trigger」を好きな場所に設定することができます。
Entry Trigger
画面のどこをタッチ(長押し)するとデバックメニューを表示することができるかを設定できます。 「Bottom」」なら画面の真ん中下を長押しすると、デバッグメニューへ飛びます。
【デバックメニュー】
見方
SRDebuggerの簡単な見方を説明します。 左側にタブがあります。
- SYSTEM
- CONSOLE
- OPTION
- PROFILER
CONSOLE
CONSOLEにはUnityのエディタ上で吐き出されるDebug.Logを見ることができます。 実機でも見れるので、どこで何が起こっているかがわかりやすくなります。
画面右上のピンマークを押すと、SRDebuggerを閉じてもログだけ見ることができるのでとても便利です。
OPTION
OPTIONは初期段階では何もありません。 ここでは自身が拡張をして色々な数字の設定やメソッドの呼び出しをすることができます。 SRDebuggerの便利な点はこの拡張性の高さにあると個人的に思っています。
OPTIONの拡張
OPTIONの拡張に関しては、ドキュメントを見れば何ができるかがひと目でわかります。 SRDebugger ドキュメント
partial を使ってSROptionsクラス内に定義をします。 [c] public partial class SROptions { } [/c]
プロパティ
他のクラスのようにプロパティを定義すると、SRDebugger上では次のように表示されます。 [c] private float scale = 1f; public float Scale { get { return scale; } set { _scale = value; } } [/c]
ただこれでは変更した値がどこにも反映されませんのでPlayerPrefsを使って保存をして使います。 [c] public float Scale { get { return PlayerPrefs.GetFloat("hoge", 0f); } set { PlayerPrefs.SetFloat("hoge", value); } } [/c]
値を制限する場合にはNumberRangeを使います。 [c] [NumberRange(0,10)] public float Scale {
} [/c]
メソッド
メソッドも他のクラスと同じように定義できます。 [c] [Category("Method")] [DisplayName("外部メソッド")] public void HogeMethod() { Debug.LogError("これはほげです"); } [/c]
CategoryとDisplayNameを付けると画面が見やすくなります。
最後に
簡単ですがSRDebuggerの使い方について書きました。 有料のAssetではありますが、とても便利に使えると思いますので、興味を持っていただけたら幸いです。