Unity-AssetBundle包管理器(AssetBundleManager)1.官方Demo简析

本文由 祝你万事顺利 出品,转载请注明出处。

官方开源的AssetBundle Manager Demo。AssetBundle Manager是官方推出的一个AB包管理器,但是此管理器已经不再AssetStore中支持了,通过上面的链接我们仍然可以看到AB包管理器实现的源码。

这里官方的Demo作为一个参考,实际使用根据项目的具体情况会有所不同,本文对官方的Demo进行解析,在实际使用中对Manager要根据使用的具体情况进行一些自定义的改进。事实上,我们能看到官方对AssetBundleManagerDemo的更新到2018年下半年后面就没有更新了。但是在Unity2018以及更新的版本中,官方提出了新的解决方案AddressableAssetSystem此方案将Manager进行了封装,并做了很多改进优化,在后面的文章中,将进行新方案的解析。


使用方法

初始化

在调用管理器的AB包加载方法之前,第一步要对AB包进行初始化,这一步加载StreamingAssets,在加载完成后,设置全局的AssetBundleManifest,这样我们才可以在后面正确的加载依赖。

public IEnumerator Initialize()
    {
   
        var request = AssetBundleManager.Initialize();
        if (request != null)
        {
   
            yield return StartCoroutine(request);
        }
    }
IEnumerator Start()
    {
   
        yield return StartCoroutine(Initialize());
    }
加载AssetBundle

声明一个AssetBundleLoadOperation的请求。在请求完成后调用Operation中的GetAsset方法获取目标类型的资源。

IEnumerator Start()
    {
   
        yield return StartCoroutine(Initialize());
        AssetBundleLoadOperation request = AssetBundleManager.LoadAssetBundle("commonpanel.prefab");
        yield return StartCoroutine(request);
        GameObject commonPanelB = request.GetAsset<GameObject>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值