Unity创建asset文件

其中[CreateAssetMenu]属性可以在Create里点击对应名称创建asset文件。如下图

using System.Collections.Generic;
using UnityEngine;
 
[CreateAssetMenu]
public class ChatConfig : ScriptableObject
{
    [SerializeField]
    public List<string> ChatContent;
}

使用Resources Load类型为ChatConfig的对象就可以加载到所有数据,例如

var content = Resources.Load<ChatConfig>("ChatConfig");

代码创建

using UnityEditor;
using UnityEngine;
public class CreateAssetEditor
{
    [MenuItem("Assets/Create ScriptObject")]
    static void CreateScriptObject()
    {
        ChatConfig config = ScriptableObject.CreateInstance<ChatConfig>();
        config.ChatContent = new System.Collections.Generic.List<string>
        {
            "A",
            "B"
        };

        AssetDatabase.CreateAsset(config, "Assets/Resources/NewChatConfig.asset");
        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_40833062/article/details/129293210