当前位置: 首页 > article >正文

Unity热更新 之 Addressables(2) 本地/远端打包 流程测试

        基础篇:Unity热更新 之 Addressables(1) 资源基础加载-CSDN博客

        基础方法来源于唐老狮,我也是初学热更这一块,所有不保证步骤完全正确,如有不足还请斧正

目录

0.前提

1.本地打包

1.1.资源放入包

1.2.简化路径名称给出标签(如有需要的话)

1.3.配置打包路径 

1.4.打包到本地

 1.5.编写脚本

1.6.编辑器测试 /游戏打包测试

1.7.注意事项

2.远端打包

2.1.获取服务器IP和端口 /打开Hosting获取Ip和端口

2.2.修改远端加载路径 

2.3.将需要远端打包的资源修改为Remoto

​编辑

2.4.修改配置文件(提供远端加载目录)

​编辑

2.5.打包生成资源和目录 

2.6.上传资源到服务器 

2.7.打包加载测试 

3.总结


0.前提

        唐老狮在此前还讲了配置文件相关知识,但是比较冗长,而且Unity6的Addressables和2020版本有点不一样,所以我就不过多啰嗦了,十分建议大家去看原视频,或者查询Unity手册

全部 - 游习堂 - 唐老狮创立的游戏开发在线学习平台 - Powered By EduSoho

Unity - 手册:Addressables - Unity 文档

1.本地打包

        试图加载一个方块并将其实例化于场景需要经历如下步骤

1.1.资源放入包

1.2.简化路径名称给出标签(如有需要的话)

1.3.配置打包路径 

不建议修改 

1.4.打包到本地

 1.5.编写脚本

using System.ComponentModel;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.ResourceManagement.AsyncOperations;
using UnityEngine.UI;

public class LocalLoad : MonoBehaviour
{
    public Text loadInfo;   
        
    // Start is called once before the first execution of Update after the MonoBehaviour is created
    void Start()
    {
        AsyncOperationHandle<GameObject> handler =Addressables.LoadAssetAsync<GameObject>("A");
        handler.Completed += (obj) => {
             if (obj.Status == AsyncOperationStatus.Succeeded){
                Instantiate(handler.Result,Vector3.zero,Quaternion.identity);
                loadInfo.text ="加载成功";
            }else{
                loadInfo.text = "加载失败";
            }
        };
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

1.6.编辑器测试 /游戏打包测试

 

1.7.注意事项

        之所以不让修改本地打包路径,是因为本地打包出去后资源会自动放到StremingAssets文件里,手动修改打包路径后虽然可以正常将资源打包出去但是加载的时候游戏寻不到资源地址

        (哪怕你也修改了加载路径也寻不到,所以,必须要放到StremingAssets下)

2.远端打包

        这里我是有点问题的我没有Hosting窗口,也没有去租任何一个云服务器,所以就讲一下唐老狮的步骤得了

        我将hosting模拟和远端的步骤结合到一起吧,并不影响实际操作和观看

2.1.获取服务器IP和端口 /打开Hosting获取Ip和端口

        你就知道获取ip和端口就行了

2.2.修改远端加载路径 

        重要的是填写这里远端加载的路径

2.3.将需要远端打包的资源修改为Remoto

现在的版本是这样子的 

2.4.修改配置文件(提供远端加载目录)

        针对特定远端加载组设置:

  • Build & Load Paths 设置为 <custom> 及以下的配置:
    • 当你在某个 Addressable Asset Group 的设置中进行这样的修改(如这里的 Build Path 设置为 Remote.BuildPathLoad Path 设置为 Remote.LoadPath 并指定了具体的远端路径 http://10.40.128.54:8080/StandaloneWindows64),这些设置仅对该资源组内的资源生效。
    • 这意味着只有属于这个资源组的资源在构建(Build)时会按照指定的 Build Path 进行打包,并且在运行时加载这些资源时会从指定的 Load Path(远端路径)去获取。
    • 其他未在该资源组中的资源,如果它们所在的资源组有不同的配置(可能是本地路径、其他远端路径等),则会按照各自资源组的配置来进行构建和加载。

        例如,你可能有多个资源组,一个资源组用于存放一些经常更新的美术资源,你将其设置为远端加载以便于热更新;而另一个资源组可能是一些基本的配置文件或很少更新的资源,你可能会将其设置为本地加载,以提高加载速度和减少对网络的依赖。

        所以,这里的设置是针对特定资源组的,而不是全局影响所有 Addressables 资源的。这样可以更灵活地根据资源的性质和使用场景来配置不同的构建和加载方式

现在版本没有什么修改:

2.5.打包生成资源和目录 

        catalog:目录                          其他文件:资源组

        都是json,是可以自己解析的

2.6.上传资源到服务器 

        之前并没有修改远端保存地址,所以那个文件很好找的,把生成的目录和资源都上传到服务器就行了 

2.7.打包加载测试 

3.总结


http://www.kler.cn/a/500366.html

相关文章:

  • 通过ESP32和INMP441麦克风模块实现音频数据传递
  • TDC-GP30 Data Sheet
  • 30分钟学会HTML
  • 【Powershell】Windows大法powershell好(二)
  • 个性化图书商城推荐系统 协同过滤余弦函数推荐图书 Springboot Vue Element-UI前后端分离
  • 汽车供应链关键节点:物流采购成本管理全解析
  • 有一台服务器可以做哪些很酷的事情
  • 使用conda出现requests.exceptions.HTTPError 解决方案
  • 网络安全-RSA非对称加密算法、数字签名
  • Gateway 网关
  • Lua语言的网络编程
  • 机器学习全流程解析:数据导入到服务上线全阶段介绍
  • SQL进阶实战技巧:LeetCode2201. 统计可以提取的工件?
  • CentOS 系统中防火墙相关命令
  • linux 内核OOM问题定位-SLAB_DEBUG
  • 【Uniapp-Vue3】使用defineExpose暴露子组件的属性及方法
  • HTTPS SSL/TLS 工作流程
  • 数据在内存的存储
  • Android 修改SVG属性并显示图片(AndroidSvg)
  • Spring Security单点登录
  • linux-ssh + google authenticator双因子认证
  • Python 通过命令行在 unittest.TestCase 中运行单元测试
  • 妙用编辑器:把EverEdit打造成一个编程学习小环境