Unity编辑器生成可配置编辑文件

using UnityEditor;

public class PoolManagerEditor {
    [MenuItem("Manager/Creat GameObjectPoolConfig")]
    static void CreatGameObjectPoolList()
    {
        GameObjectPoolList poolList = ScriptableObject.CreateInstance<GameObjectPoolList>();//生成可编辑对象
        string path =@"Assets/Framework/Resources/gameobjectpool.asset";//保存的路径
        AssetDatabase.CreateAsset(poolList,path);//第一步
        AssetDatabase.SaveAssets();//第二步
    }
}

  

 GameObjectPool类
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
[Serializable]
public class GameObjectPool {
   [SerializeField]//类的私有字段,又可在Unity编辑器上列出
    private string name;
    [SerializeField]
    private GameObject prefab;
    [SerializeField]
    private int maxAmount;
    [NonSerialized]
    private List<GameObject> goList = new List<GameObject>();
	
}

  

GameObjectPoolList类
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
[Serializable]
public class GameObjectPoolList : ScriptableObject {
    public List<GameObjectPool> poolList;
}

  

posted @ 2017-09-05 23:08  BecaLove  阅读(1316)  评论(0)    收藏  举报