【Unity】デバッグ時にWaitForSecondsがうっとうしい時の対処法
Unityでデバッグを行っている時、
様々な場面で組み込んでいるWaitForSecondsの設定
アニメーション等で使用していると思うのですが、
デバッグの時はウェイトをスキップしてすいすいデバッグしたい!
と思う事があったので方法をまとめます。
ソースコード
/// <summary> /// ウェイト付き関数 /// </summary> /// <returns></returns> public IEnumerator Set_CzStart() { Debug.Log("ウェイト前"); yield return new WaitForSeconds(GetWtTime(10.0f)); Debug.Log("ウェイト後"); } /// <summary> /// タイマー値取得 /// </summary> /// <param name="SetTimer">設定したい秒数</param> /// <returns>デバッグ判定後秒数</returns> public static float GetWtTime(float SetTimer) { #if Def_WaitDebug return 1f; #else return SetTimer; #endif }
この記述方法でウェイト時間をデバッグ時のみ1秒に短縮できるようになります。
WaitForSecondsに秒数を設定する時に関数を挟む感じです。
ウェイト時間の切り替え方法は、
#define Def_WaitDebug
上記のDefine設定をソースファイルの一番上に記入するかどうかで
切り替えることが出来ます。
・記入する・・・ウェイト時間=1秒になる
・記入しない・・ウェイト時間=設定秒になる
UnityEngineなどのソースは書き換えができなかったので
デバッグ用に新たに関数を作りました。
付け焼刃感が凄いですが、スイスイデバッグの参考にしてみてください。