灰常简单!只需三步!
Firstly 创建一个c#文件(我这里取名为ScriptableUtility2)
内容为
using UnityEngine;
using UnityEditor;
public static class ScriptableUtility2
{
//为创建自定义类型
public static void CreateAsset<T>() where T : ScriptableObject
{
var asset = ScriptableObject.CreateInstance<T>();
//给默认的文件名称
ProjectWindowUtil.CreateAsset(asset, "New " + typeof(T).Name + ".asset");
}
}
Secondly 还是创建一个c#文件(我这里取名为CardAsset)这个就是我们要创建的对象了。
请注意!他!一定要继承我们的ScriptableObject类噢!!!
内容为
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CardAsset : ScriptableObject
{
//要做什么操作自己定义吧~
}
Thirdly 创建一个C#文件 (我这里取名为CardUnityIntegration)
这个是用来创建文件的核心步骤。如果第二部没有继承ScriptableObject类,那么创建上面的类时就会报错。
内容为
using UnityEngine;
//为了可以在面板中create cardAsset
using UnityEditor;
public class CardUnityIntegration
{
//右击后,按钮创建的位置
[MenuItem("Assets/Create/CardAsset")]
public static void CreateYourScriptableObject()
{
//我们需要CardAsset继承ScriptableObject
//否则它将无法被作为泛型被创造
ScriptableUtility2.CreateAsset<CardAsset>();
}
}