Unity3D的资源热更新的讨论

Unity3D的资源热更新的讨论

最近和团队讨论打包导致的发版本时间过长的问题: 平均1个小时

Unity3D现在官方不支持热更新, 虽然有一些lua的热更方案, 但鉴于项目开始时lua热更还不成熟, 所有没有采用

经过长时间业界和技术的摩擦, 渠道基本认同了Unity3D不能热更的现实

 

根据我们这边运营分析的热更新的需求: 临时关闭功能避免bug刷钱

在强力的QA支持(我们有)下, 可以保证版本的功能不会有明显问题, 即便有问题, 可以通过服务器关闭功能达到效果

 

这样来说, 代码上的热更新基本是不可能了, 只能通过服务器来配合, 所以我们只考虑资源热更新需求.

 

场景: 这部分属于PVE功能, 虽然包含有怪物摆放的逻辑, 但一般一旦做好基本没有更新需要

角色: 后期这块可能会考虑更新, 但明显系统上可以同时支持打包和非打包需求, 因此默认包内的角色可以直接打包, 未来的付费相关的角色热更新需求既可以通过

一阶段打包更新, 也可以根据增量更新进行. 

界面: 知识更新界面包只能修改界面布局和坐标, 逻辑依然需要打包更新, 所以这块完全有必要不做打包

特效: 特效与角色和界面关联紧密, 而且混用, 交叉的情况很多, 打包明显会造成一部分资源重复进入包体, 因此果断不打包

 

总结下来, 资源的更新一定是伴随着代码的更新来做的, 那么可以规划一个大版本, 把需要更新的资源和功能逻辑一块更新

虽然大包更新会损失一定的用户, 但未来在核心稳定的情况下, 可以考虑把新功能用脚本来更新

资源不打包带来明显的优势: 资源加载变的更快了, 制作流程变的更简单, 无需兼容打包和非打包情况. 包体大小有小幅度下降( 重复打包部分)

你可能感兴趣的:(Unity3D的资源热更新的讨论)