AB打包和加载

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AB打包和加载相关的知识,希望对你有一定的参考价值。

参考技术A AB打包 把每个资源分为预设、动画、贴图、shader,网格

分别打成AB包(去除打包冗余资源,减少内存)

生成fileversion文件 (增量打包: 旧的fileversion保存下来,生成新的fileversion,对比2分文件MD5,没有的就增加,变化的就替换)

加载AB包

加载资源的预设AB包

通过打包生成的Manifest获取预设的AB包的依赖关系来获取其资源AB包(unity有获取依赖的函数)

通过loadfromfile来加载

(www)loadfromfile :通过硬盘加载 无需暂用多余内存,但是多了一步IO操作,消耗CPU

(www.LoadFromCacheOrDownload)loadfrommenery : 通过内存加载,需要消耗内存,无需IO操作

卸载

Resources.unload : 卸载场景的资源 AB包还在

Resources.unloadnoUse:卸载所有未被引用的资源,CPU消耗大

Assetbundle.Unload:卸载AB包资源,true 包含所有引用关系,场景里面的资源,false只删除AB包 场景里面已经加载的资源不会删除

AssetBundle Browser 教程丨Unity自带的一款AB包打包工具

哈喽大家好,你的橙哥突然出现~

本系列博客地址:传送门



一、插件功能

1、插件是发布AB包的工具

AssetBundle Browse可以将项目中的资源打包成AB包,发布游戏后,项目将通过加载StreamingAssets中AB包的形式,加载所需资源,而不是像之前那样,从Assets中进行加载。

1、AB包是什么

AB包全名AssetBundle(资源包)。是一种Unity提供的用于存放资源的包。通过将资源分布在不同的AB包中可以最大程度地减少运行时的内存压力,并且可以有选择地加载内容。

2、为什么要用AB包

1️⃣热更新

要热更新需要确保AB包打出来的资源具有唯一性,且相同资源的AB包检验码相同。

2️⃣ Resources加载存在问题

Resources加载虽然简单方便,但是也有很多问题:

  • 对内存管理造成一定的负担。
  • 在打开应用时加载时间很长。
  • Resources文件夹

以上是关于AB打包和加载的主要内容,如果未能解决你的问题,请参考以下文章

AssetBundle Browser 教程丨Unity自带的一款AB包打包工具

AssetBundle Browser 教程丨Unity自带的一款AB包打包工具

AssetBundle Browser 教程丨Unity自带的一款AB包打包工具

AB包

Unity的加载路径

Unity中AB资源打包简单的脚本