【Unity】ストップウォッチで処理時間を計測しよう
特定のスコープ内の処理時間を計測する時に使えます。
using UnityEngine;
public class StopWatch : System.IDisposable
{
public string text { get; set; }
private System.Diagnostics.Stopwatch m_StopWatch = new System.Diagnostics.Stopwatch();
public System.Diagnostics.Stopwatch stopWatch { get { return m_StopWatch; } }
public StopWatch(string _text)
{
text = _text;
stopWatch.Start ();
}
public void Dispose()
{
stopWatch.Stop ();
var elapsed = (float)stopWatch.Elapsed.TotalSeconds;
Debug.LogFormat("{0} Time:{1}", text, elapsed);
}
}
使い方
#if UNITY_EDITOR || DEVELOPMENT_BUILD
using(new StopWatch("計測1:"))
#endif
{
// 処理
}
都度デバッグログを仕込むのはコードが汚くなりますし、こうしたユーティリティクラスを使うと見通しが良くなります。