一、初识AB包
AssetBundle是将资源用Unity提供的一种用于存储资源的压缩格式打包后的集合,它是对资源管理的一个扩展,可以动态地加载或者卸载,并且大大地节约了游戏所占的空间,即使是已经发布的游戏也可以用其来增加新的内容。因此,动态更新、网页游戏、资源下载等都是基于AssetBudle系统的。
二、具体开发步骤
- 创建AssetBundle,开发者在Unity编辑器中通过脚本来将所需的资源打包成AssetBundle文件。
- 上传至服务器。开发者创建好AssetBundle文件后,可通过上传工具将其上传到游戏的服务器中,使游戏客户端可以通过访问服务器来获取当前所需的资源,进而实现游戏的更新。
- 下载AssetBundle。游戏进行时,客户端会将服务器上的游戏更新所需的AssetBundle下载到本地设备中,再通过加载模块将资源加载到游戏中。Unity提供了相应的API可供使用来完成从服务端下载AssetBundle。
- 加载AssetBundle。AssetBundle 文件下载成功后,开发者通过Unity提供的API可以加载资源里所包含的模型、纹理图、音频、动画、场景等,并将其实例化来更新游戏客户端。
- 卸载AssetBundle。在Unity中提供了相应的方法来卸载AssetBundle,卸载AssetBundle可以节约内存资源,并且保证资源的正常更新。
三、AB包的打包
只有Assets面板下的资源文件才能被打包到AB包中,所以有些模型资源先被制作成Prefab预制体才行,在Inspector面板底部有