以下の内容はhttps://baba-s.hatenablog.com/entry/2022/09/19/143756より取得しました。


【Unity】UnityException: LoadSerializedFileAndForget is not allowed to be called from a ScriptableObject constructor (or instance field initializer), call it in OnEnable instead. Called from ScriptableObject 'XXXX'.

概要

[InitializeOnLoad]
internal static class Example
{
    static Example()
    {
        Debug.Log( ExampleSetting.instance );
    }
}

InitializeOnLoad のタイミングで ScriptableSingleton にアクセスしたら

UnityException: LoadSerializedFileAndForget is not allowed to be called from a ScriptableObject constructor (or instance field initializer), call it in OnEnable instead. Called from ScriptableObject 'XXXX'.
See "Script Serialization" page in the Unity Manual for further details.

上記の例外が発生した

[InitializeOnLoad]
internal static class Example
{
    static Example()
    {
        EditorApplication.delayCall += () =>
        {
            Debug.Log( ExampleSetting.instance );
        };
    }
}

1 フレーム遅らせたら例外が発生しなくなった




以上の内容はhttps://baba-s.hatenablog.com/entry/2022/09/19/143756より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14