欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > ScriptableObject基本使用

ScriptableObject基本使用

2024/11/30 10:30:13 来源:https://blog.csdn.net/weixin_62613770/article/details/142886629  浏览:    关键词:ScriptableObject基本使用

使用方法

自定义类继承ScriptableObject

可以在类内部增加数据或者数据类,一般用于配置

注意事项

给继承ScriptableObject的类增加CreateAssetMenu特性。

CreateAssetMenu一般默认三个参数

第一个参数是父目录

第二个参数是父目录的子选项

第三个参数是可以手动对子选项排序

内部若是有数据类需要给数据类增加序列化特性

内部若是有字典容器或者数据类内部有字典容器的话则不能在unity的Inspector显示(可通过Odin插件解决这个问题)

创建方法

赋值方法

1.静态赋值

将其声明为公有,通过在unity中拖拽赋值

2.动态赋值

将其声明为私有,通过加载赋值

案例展示

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;[Serializable]
public class GameData
{public int GameID;public string GamePath;
}[CreateAssetMenu(fileName = "GameConfig",menuName ="GameConfig/设置")]
public class GameConfig : ScriptableObject
{public string Path;public int ID;public GameData GameData;public List<GameData> GameDataList;
}

测试

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Reflection;public class Test : MonoBehaviour
{GameConfig gameConfig;void Start(){gameConfig = Resources.Load<GameConfig>("GameConfig");Debug.Log(gameConfig.ID);}void Update(){}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com