最近在项目中进行资源优化. 我们的项目一直以来都是以传统的电子表格配置为中心的资源驱动加载方法, 拿角色携带的特效要播放出来这个case来具体点说就是:1. 技能部分的特效可以遍历动作表播放的所有特效id, 提前预载2. buff类特效是动态确定的,无法分析. 需要通过角色表添加资源id在加载角色时加载特效这种做法的缺点:当角色特效效果调整时, 美术和策划需要调整特效id表. 多出来不用的特效也加载是感觉不出来的, 分析也是很困难的所以这种以传统的电子表格配置为中心的方式在Unity3D里, 内存, 包优化会是个大问题. 那么, 什么是Unity3D的开发核心思想?除了组件思想外, 就是Prefab, 贯彻整个编辑器及引擎自始至终 处理角色携带特效加载后播放的这个case, 用Prefab为中心的资源管理来做的话, 大概就是这样:1. 程序编写一个角色特效列表脚本, 把List暴露出来可以在编辑器里使用2. 美术在做技能时, 把要用到的特效拖拽到List中3. 特效无需再编制全局ID编码4. 策划根据这个角色挂接的特效索引, 在配置表里添加播放指令这样做的优点:角色引用到的资源才会被打到最终游戏包内, 不使用的资源是不会被加载的 类似的, 在UI特效里, 也应该是将要播放的特效挂接到对象中, 而不是动态通过代码去加载在Unity3D中, Prefab将
...
继续阅读
(10)