unity ScriptableObject 存储数据资源

Unity文档说明

当作配置文件什么的
当在运行时使用脚本修改其设置的值时
切换到不引用这个资源的场景也会重置设置的值 重启程序是不会保留的
在编辑器中 在编辑器中运行程序修改值后 重启unity编辑器 会变回默认值 或者切换不引用这个资源的场景
使用DontDestroyOnLoad 将引用这个资源的脚本保留在其他场景 他的值也还会保留

创建方式

创建脚本 继承自Script able Object

using UnityEngine;

[CreateAssetMenu(fileName = "UntitledInstaller", menuName = "MyAsset/UntitledInstaller")]//添加这个特性就能在资源窗口右键创建资源
public class UntitledInstaller : ScriptableObject
{
    public string name;
    public string age;

    public TestClass tc;
}

[System.Serializable]//标记可序列化 要不然在Inspector 面板看不到这个字段
public class TestClass
{
    public int TestInt;
}

然后创建资源文件


image.png

创建后就可以配置这个文件了


image.png

使用方式

UntitledInstaller untitledInstaller = Resources.Load("Installers/UntitledInstaller");

或者 在脚本创建 UntitledInstaller 类型的变量 将资源拖进去引用就可以了

你可能感兴趣的:(unity ScriptableObject 存储数据资源)