需求
- 提供同步、异步加载AB包和资源的方法。实战中以异步加载为主。这需要用协程,所以必须继承Mono;
- 加载AB包前先加载依赖包;
- 检查器上显示已加载的、正在加载的AB包。已加载的、正在加载的资源;
分析
现在AB包加载资源都是由ResManager调用,ResManager负责提供编辑器、Resources、AB包加载资源的方法。现在整个系统用的都是同步加载,改成异步加载需要把之前拿到资源后做的各种设置、初始化代码全变成回调传入。
我们希望在保证游戏能运行的前提下,把资源加载一点点替换成异步。通过编辑器加载没有异步方法,我们还是希望能一键在编辑器同步加载和AB包异步加载之间转换,那么就不论是同步异步,统一把后续对资源设置、初始化的代码作为回调传入。现在资源加载系统的封装架构是这样的:
