[ Web Proxy ]
URL:
Viewing: https://docs.unity3d.com/ScriptReference/ScriptableObject.CreateInstance.html [Back]  [Original]

Unity - Scripting API: ScriptableObject.CreateInstance
Version: Unity 6.5 (6000.5)
    • Supported
    • Legacy
    LanguageEnglish
    • C#

    ScriptableObject.CreateInstance

    Suggest a change

    Success!

    Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

    Close

    Submission failed

    For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

    Close
    Your name Your email Suggestion* Submit suggestion

    Cancel

    Switch to Manual

    Declaration

    public static ScriptableObject CreateInstance(string className);

    Declaration

    public static ScriptableObject CreateInstance(Type type);

    Parameters

    Parameter Description
    className The type of the ScriptableObject to create, as the name of the type.
    type The type of the ScriptableObject to create, as a System.Type instance.

    Returns

    ScriptableObject The created ScriptableObject.

    Description

    Creates an instance of a scriptable object.

    To easily create a ScriptableObject instance that is bound to a .asset file via the Editor user interface, consider using CreateAssetMenuAttribute.

    using UnityEngine;

    public class MyData : ScriptableObject { public int value; }

    public class CreateInstance : MonoBehaviour { void Start() { ScriptableObject nonGenericInstance = ScriptableObject.CreateInstance(typeof(MyData)); ((MyData)nonGenericInstance).value = 20; Debug.Log("Non-generic instance value: " + ((MyData)nonGenericInstance).value); } }

    Declaration

    public static T CreateInstance();

    Returns

    T The created ScriptableObject.

    Description

    Creates an instance of a scriptable object.

    To easily create a ScriptableObject instance that is bound to a .asset file via the Editor user interface, consider using CreateAssetMenuAttribute.

    using UnityEngine;

    public class MyData : ScriptableObject { public int value; }

    public class CreateInstanceGeneric : MonoBehaviour { void Start() { MyData genericInstance = ScriptableObject.CreateInstance<MyData>(); genericInstance.value = 10; Debug.Log("Generic instance value: " + genericInstance.value); } }

    Web Proxy Viewer  |  New URL  |  Original Page