序列化可编辑文件(列表)生成,ScriptableObject

一、要编辑的单元

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();
    }
}

四、结果

blob.png


首页 我的博客
粤ICP备17103704号