unity自带了AssetsBundle的机制,Addressable是在AssetsBundle的机制上封装了一下。
主要做了以下封装:
1.编辑器:根据项目需求,编写编辑器扩展,提供指定资源打入对应bundle包的策略;
2.可以自主加载和释放资源:根据项目的需求,资源包的依赖,提供ab包资源加载与释放的策略;
3.增量单独下载:根据项目版本管理,更新需求,提供ab包的更新与增量下载策略;
4.加密:项目资源加密的策略;
对于项目中需要这些封装,然后自己也还没封装时,使用Addressable这无疑是最大的策略,但是对于自己项目中已经有了自己需要的封装,那也没必要用。
打包bundle包
分组指定与配置好以后,接下来我们就是要打包生成bundle包了,这个很简单,只要打开AddressableGroups视图如图:
选择Build/New Build/Default Build Script。这样就可以打包所有的bundle包,在对应的目录就能看到了。
资源的运行模式
每次修改了资源以后,我们都要来打bundle包,这样操作会比较麻烦, 于是Addressable提供了几个运行模式,如图
Use Asset Database: 使用Editor模式下的AssetDatabase,来模拟加载资源,这样速度最快。开发中就不用每次都去build bundle包。
Simulate Groups: 模拟真实的ab包模式下的运行。
Using Existing Build: 从打包出来的ab包中加载资源运行。