• Unity 3D模型展示框架篇之资源打包、加载、热更(Addressable Asset System | 简称AA)


    本项目将整合之前Unity程序基础小框架专栏在Unity 3D模型展示项目基础上进行整合,并记录了集成过程中对原脚本的调整过程。增加了Asset Bundle+ILRuntime热更新技术流程。

    前面文章中对项目功能完成项目框架整合,完成模型展示的基本功能,后续的篇幅主要进行资源热更和代码热更的实现。官方推出的Addressable Asset System进行资源热更简称AA,作者在网上找了不少介绍Addressables系统的文章,经过验证总结结合案例记录Addressables系统的使用经验。

    使用AssetBundle形式,加载的时候要注意AB包之间的依赖关系,资源重复打包的问题,做资源热更新也要实现增量资源包的打包,然后自己实现热更检测、资源下载、MD5比对,解压等等逻辑过程繁琐麻烦,Addressable Asset System简化资源热更新的环节使得开发者进行资源热更新变得简单易上手。
    项目安装Addressable Asset System,在Package Manager中搜索Addressables
    在这里插入图片描述进行安装
    在这里插入图片描述进行设置并使用,选择创建Groups
    在这里插入图片描述将预制体Switch设置Addressable,可以发现他出现在窗口Addressables Groups进行属性操作。
    在这里插入图片描述资源命名
    在这里插入图片描述
    设置模式
    在这里插入图片描述进行构建
    在这里插入图片描述构建目录Library\com.unity.addressables\aa\Windows
    在这里插入图片描述在这里插入图片描述修改MyGameManager代码改变资源加载方式,使用Addressables进行预制体加载。运行能够加载。

    void Start()
        {
            //var tempDD = ResMgr.GetInstance().Load("Prefabs/Switch");
    
            Addressables.LoadAssetAsync("Switch").Completed += (handle)=> {
                // 预设物体
                GameObject prefabObj = handle.Result;
                  GameObject tempDD = Instantiate(prefabObj);
                tempDD.transform.SetParent(parentObj.transform);
                tempDD.name = "Switch";
                camera.LookAt = tempDD.transform;
                camera.Follow = tempDD.transform;
                tempDD.transform.position = new Vector3(5f, 0f, 50f);
                camera.GetRig(1).LookAt = tempDD.transform;
            };
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    修改预制体,将Cube隐藏
    在这里插入图片描述重新构建资源文件
    在这里插入图片描述选择.bin文件,平台是Windows打开

    在这里插入图片描述此时,报错Previous build had 'Build Remote Catalog' disabled. You cannot update a player that has no remote catalog specified
    在这里插入图片描述AddressableAssetSettings
    在这里插入图片描述设置和Group信息中的Content Packing&Loading路径一致,修改为远程更新目录
    在这里插入图片描述AddressableAssetSettings中的设置
    在这里插入图片描述Update a previous Build
    在这里插入图片描述配置文件夹中生成更新包

    在这里插入图片描述运行结果
    在这里插入图片描述
    下一步将使用远程服务器进行更新包的发布,程序进行资源更新检测及下载操作。先预览一下效果
    请添加图片描述
    Unity 3D模型展示框架篇之资源打包、加载、热更(二)

    Addressables资源管理推荐文章:https://blog.csdn.net/linxinfa/article/details/122390621

  • 相关阅读:
    2022 PAT 甲级(秋季)
    【C++深入浅出】类和对象下篇
    python中的code object
    神经网络 05(损失函数)
    软件测试分类
    【Langchain Agent研究】SalesGPT项目介绍(四)
    KL变换(PCA主成分分析)
    JPA Native Query(本地查询)及查询结果转换
    VCS工具学习笔记(3)
    基于复杂网络的大群体应急决策专家意见与信任信息融合方法及应用
  • 原文地址:https://blog.csdn.net/yxl219/article/details/126124611