一、要编辑的单元
using UnityEngine; using System; [Serializable] public class GameObjectPool { [SerializeField] private string name; [SerializeField] private int maxNum; }
二、可编辑的类型
using System.Collections.Generic; using UnityEngine; public class GameObjectPoolList : ScriptableObject { public List<GameObjectPool> pools = new List<GameObjectPool>(); }
三、创建这个可编辑的文件
using UnityEngine; using UnityEditor; public class PoolManagerEditor { [MenuItem("Manager/Create Pool")] public static void CreateEditorPools() { GameObjectPoolList list = ScriptableObject.CreateInstance<GameObjectPoolList>(); string path = "Assets/26/gameobjectpool.asset"; AssetDatabase.CreateAsset(list, path); AssetDatabase.SaveAssets(); } }
四、结果