数据配置系统ConfigManager
数据配置系统ConfigManager
背景
游戏内的数据可以有多种方式进行修改读取保存。如果写在代码中或者unity中,虽然方便程序开发,但是对于真正的数据设计者——策划,似乎不是太友好,为了修改数据要下载unity、配置环境、学习代码等等,而这一切只为了能进行数据修改和配置。
为了使策划和程序进行分离,更专注于自身工作任务,数据配置系统就显得尤为重要。框架通过引入代码哲学组织的Luban的数据配置方案来满足项目的策划分离需求。
Luban配表部分详见:Luban数据配表方案
使用
Luban方案的数据项结构
luban方案导出的数据分为以下三个部分:所有表单列表tables、具体表单、表单内每项数据。
结构如下:
1 | // 所有表单列表 |
调用具体表单的具体数据项
以读取Global.xlsx的MillisecondPerUnit为例
数据项:
程序中调用:
1 | // var 变量名(已声明为具体类型) = ConfigManager.Tables.具体表单名["数据项id"].Value |
获取表单所有数据项
以音效系统SFXManager为所有音效AudioSource配置输出混响器的举例,简单描述需求为,一个音效对应一个AudioSource,AudioSource的混响器设置为音效数据项的SFXType,对应的混响器,从混响器字典中[SFXType]拿到。
数据格式:
SFX.xlsx:
tables.xlsx:
程序调用:
1 | // 表单的所有数据项列表:ConfigManager.Tables.具体表单.DataList |
1 | // 遍历所有数据项,来设置所有音效数据项的混响器 |
评论