Unity中简单的打包AssetBundle并加载

一、AB包是什么

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

二、为什么要用AB包

主要原因,就是用作资源热更新,以及对应用包体的减负

三、有没有现成的打AB包的插件

有官方出过一个插件《AssetBundle Browser》,该插件在Github上,下载导入就可以使用,我这边就不做过多的介绍了。

四、能不能自己编写打AB包功能

能,但是这需要一定的编辑器扩展知识,下面会放上简单的代码,实现打AB包,以及加载AB包。

首先自己编写编辑器扩展,我们需要一个文件夹和一个命名空间以及一个预编译,分别是:

文件夹:Editor,在Assets文件夹下创建一个文件夹,叫这个名称,这个名称在Unity中是特殊的,放在里面的脚本都是用来编写编辑器扩展的代码,最后发布也不会把该文件中的代码发布出去。

命名空间:UnityEditor,在Unity中编辑器是一套代码,应用开发功能是一套代码,分别编辑器的是UnityEditor,应用功能是UnityEngine,发布应用只会把UnityEngine的代码发布到应用中,如果在需要发布的代码中应用UnityEditor发布时会报异常,导致发布失败。

预编译:UNITY_EDITOR,当我们要编写编辑器扩展,如果必须在需要发布的代码中编写时,那么可以在编辑器扩展的这部分代码加上UNITY_EDITOR预编译头,那么发布应用时会自动裁剪掉,就不会影响发布导致发布失败。

说了这么多,就直接开始上代码吧,首先创建一个编辑器扩展的按钮,就前面说的在Assets文件夹下创建一个Editor文件夹,创建一个脚本AssetBundleBrowser

在这里插入图片描述

接着就是创建一个按钮(如下图),我们在脚本中编写一个静态方法,然后增加上MenuItem字段即可,字段参数是这个按钮的名称,如果加上/可以增加多级菜单
在这里插入图片描述

代码如下:
在这里插入图片描述

接着就是调用Unity中提供的打包AB的方法(如下),

        BuildPipeline.BuildAssetBundles(assetBundleDirectory, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows)</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TenderRain。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值