Unity进阶学习之——AssetBundle的打包,以及本地和网络加载

本文详细介绍了Unity中的AssetBundle概念,包括AssetBundle的打包操作和如何进行本地及网络加载。AssetBundle是通过Unity的LZMA压缩技术创建的资源包,用于运行时动态加载,尤其适用于大型项目和热更新。文中展示了具体的打包步骤,以及通过C#脚本实现的本地和网络加载示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇内容

  • 1.什么是AssetBundle?
  • 2.AssetBundle和Resources
  • 3.Assetbundle的打包操作
  • 4.AssetBundle的本地和网络加载

习惯性开场白
最近在学习的过程中,发现了两种动态的加载方式Resources,Load和Asset Bundle(后面简称AB)两种方式,通过查询资料,发现两种加载方式都差不多,但是AB更加适合大型项目,以及项目优化,最重要的一点,是可以结合Lua进行热更新,我们都知道,中国的游戏市场是更趋向于网游的,而热更新技术,可以让你通过下载资源包的方式,就可以为我们已经发布的程序提供修复Bug的可能,以及活动相关资源的推送,而不用重新下载客户端安装包,然后重新安装游戏,当然,在单机游戏里也可以通过这种方式,来推送Bug的修复。

什么是Asset Bundle?

我们先来看一下官方说明:
在这里插入图片描述
AssetBundles允许您通过UnityWebRequest类流式传输其他资源,并在运行时实例化这些资源。AssetBundle是通过buildPipeline.buildAssetBundle创建的。AB包在平台之间不兼容。为任何独立平台构建的包只能加载到该平台上,而不能加载其他平台。此外,为iOS构建的捆绑包与Android不兼容,反之亦然。比如渲染器的纹理。

简单说,AB就是我们用Unity通过LZMA压缩技术压缩的包,我们通过对这种压缩包的解析,来得到其中的游戏资源,让其加载到我们的内存流中,然后我们可以通过实例化的方式,让其加载到游戏场景中。AB在创建时可以设定依赖关系,比如两个物体AB,如果你在A上面挂了一个脚本

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值