コガネブログ

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

【Unity】スタックトレースを取得する方法

概要

StackTraceUtility.ExtractStackTrace()

上記の関数で現在のスタックトレースを取得できる

using UnityEngine;

public class Example : MonoBehaviour
{
    private void OnGUI()
    {
        Hoge1();
    }

    private void Hoge1()
    {
        Hoge2();
    }

    private void Hoge2()
    {
        Hoge3();
    }

    private void Hoge3()
    {
        GUILayout.Label( StackTraceUtility.ExtractStackTrace() );
    }
}

例えば上記のようなコードを記述すると

f:id:baba_s:20200908115626p:plain

Unity エディタだとこのように表示される

f:id:baba_s:20200908115639p:plain

Windows IL2CPP ビルドだとこのように表示される