Unity3D 存储 .asset 文件 例子

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class Node : ScriptableObject {
 
    public string Name;
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
 
public class FlowNode : Node {
 
    public string Type;
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class GraphSerializationData : ScriptableObject {
 
    public List<Node> list = new List<Node>();
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
public class TestSerializationTool {
    [MenuItem("Assets/TestSerialization")]
    static void TestSerialization() {
        Debug.Log("TestSerialization");
 
        GraphSerializationData data = ScriptableObject.CreateInstance<GraphSerializationData>();
 
        string filePath = "Assets/testAsset.asset";
        AssetDatabase.DeleteAsset(filePath);
        AssetDatabase.CreateAsset(data, filePath);
        AssetDatabase.Refresh();
 
 
        FlowNode fn = ScriptableObject.CreateInstance<FlowNode>();
        fn.Name = "lzz";
        fn.Type = "123";
 
        data.list.Add(fn);
 
        AssetDatabase.AddObjectToAsset(fn, data);
 
        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();
 
 
    }
}

上面的例子 演示 有继承关系的类都可以存储到.asset中。

可以尝试使用 : [PreferBinarySerialization]

参考:https://answers.unity.com/questions/842058/serializing-a-collection-of-scriptableobjects-to-a.html
————————————————
版权声明:本文为CSDN博主「aa20274270」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/aa20274270/article/details/82895811

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值