コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】任意のコードの実行時間や GC Alloc を測定して Profiler に表示できる「CustomSampler」

概要

using UnityEngine;
using UnityEngine.Profiling;

public class Example : MonoBehaviour
{
    private void Start()
    {
        var sampler = CustomSampler.Create( "Pokemon" );
        sampler.Begin();

        for ( int i = 0; i < 10000; i++ )
        {
            Debug.Log( "あああああ" );
        }

        sampler.End();
    }
}

CustomSampler を使用することで、

f:id:baba_s:20190324192831p:plain

任意のコードの実行時間や GC Alloc を測定して Profiler に表示できます

Profiler.BeginSample と同じような機能ですが、
Profiler.BeginSample よりもオーバーヘッドが少ないとのことです

また、Conditional 属性が適用されており、
リリースビルドに含まれないようになっています

参考サイト様