- 创建脚本CreateAsset > 继承ScriptableObject > 添加CreateAssetMenu特性;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[CreateAssetMenu]
public class CreateAsset : ScriptableObject
{
public int age;
public string usename;
public string password;
}
2. 在Editor文件夹下创建CreateAssetEditor脚本 > 添加MenuItem特性
using UnityEditor;
using UnityEngine;
public class CreateAssetEditor
{
[MenuItem("Assets/Create ScriptObject")]
static void CreateScriptObject()
{
CreateAsset createAsset = ScriptableObject.CreateInstance<CreateAsset>();
createAsset.age = 18;
createAsset.usename = "lisi";
createAsset.password = "111111";
AssetDatabase.CreateAsset(createAsset, "Assets/Resources/NewCreateAsset.asset");
AssetDatabase.SaveAssets();
AssetDatabase.Refresh();
}
}
使用[MenuItem(“Assets/Create ScriptObject”)] 特性来扩展编辑器, 作用是在 Assets菜单栏中添加了一个Create ScriptObject 的下拉菜单选项;
点击CreateScriptObject就会出现下图中新建的Asset配置文件;
**注意:**用来加载Asset配置中的数据;
CreateAsset createAsset = Resources.Load<CreateAsset>("CreateAsset");