コガネブログ

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

【Unity】Enter Play Mode で static 変数の初期化ができる Attribute「UnityDomainReloadHelper」紹介

概要

「Editor-View-UnityDomainReloadHelper」を Unity プロジェクトに導入することで
Enter Play Mode で static 変数の初期化ができる Attribute を使えるようになります

使い方

using UnityEngine;

public class Example : MonoBehaviour
{
    // 0 で初期化される
    [ClearOnReload] private static int m_value1;

    // 25 で初期化される
    [ClearOnReload( valueToAssign: 25 )] private static int m_value2;

    // SubsystemRegistration のタイミングで呼び出される
    [ExecuteOnReload]
    private static void Run()
    {
        Debug.Log( m_value1 );
        Debug.Log( m_value2 );
    }
}