12.资源打包加载更新理论

  1. 12.资源打包加载-理论
    1. 12.1 知识点
      1. 资源打包是指什么
      2. 资源打包的模式
      3. 资源打包的注意事项

12.资源打包加载-理论


12.1 知识点

资源打包是指什么

资源打包是指,将可寻址资源打包到AssetBundle资源绑定包中。以前我们学习AssetBundle时需要我们自己写代码或者通过工具进行打包,现在Addressable将这个过程自动化了。可寻址资源中资源一般以组为单位进行打包。最终的AB包数量,都是基于资源组决定的。

打包好的AB包,我们可以自定义如何使用它们。

  • 发布游戏时所有AB包作为原始资源一起打包出去(这样做的目的仅仅是单机游戏为了减小游戏包体)。
  • 将AB包放到远端服务器,发布游戏时只打包必备资源(这样做的目的是不仅可以减小包体,还可以进行热更新)。

资源打包的模式

之前在讲解Packed Assets配置相关时,有一个打包模式的字段Bundle Mode。我们有三种打包的方式:

  • Pack Together:创建包含组中所有资产的单个包。
  • Pack Separately:为组中的每个类型的资源创建一个包。如精灵图片中的精灵图片被包装在一起。
  • Pack Together by Label:为共享相同标签组合的资产创建一个包。

一般情况下,我们都使用第一种模式,按组来进行打包,所以我们在整理资源时要尽量合理。

资源打包的注意事项

  1. 场景资源始终有自己单独的包:

    • 当一个可寻址包中有场景资源和普通资源时,场景资源和其它资源始终会被分开打包,即该组会生成两个包,一个场景的,一个其它资源的。
  2. 资源依赖的注意事项:

    • 如果资源a和资源b都使用了资源c,但是资源a和b是可寻址资源但不在一个组中,而c不是可寻址资源,那么这时资源c分别会被打进a和b的包,相当于这时的c就被重复利用了,浪费了空间。
    • 较好的解决方案是将c也作为可寻址资源,即 a-A包、b-B包、c-C包。这时c不会被打进A、B包,A、B包只会依赖于C,而Addressable会自动帮助我们处理依赖问题。
    • 注意:在使用图集时,尤为要注意这个问题,当不同包中内容使用同一个图集中图片时,建议大家将图集也作为可寻址资源,并且有专门的一个图集包,让其它使用图集中图片的对象会对该图集包产生依赖。
  3. 合理安排可寻址资源分组:

    • 同类型,同作用放一起,比如:角色组、怪物组、武器组、衣服组、登录UI组、装备UI组、音效组、可变贴图组、图集组等等。
  4. 关于包的数量(分组的数量):

    • 要根据实际情况来对资源进行布局,包(分组)过多、包(分组)过大都不太好,要根据自己的实际情况进行组的安排。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏