赞
踩
上一篇介绍了“Unity3d 使用统一可寻址资产系统(Addressables)入门学习保姆级教程(含工程)”,对Addressables有了一定了解,加上基础的操作能简单上手。本篇将更深入的了解Addressables的强大功能,了解它是如何在资源热更和资源版本管理方面提高开发者的工作效率。本篇内容基于上一篇的工程demo继续修改。
场景中我们复制了两个人形模型,将其高度设置高一点,并将颜色修改为蓝色。修改了UI的提示文字等:
将搭建好的场景“RemoteSceneNode”节点拖成预设:
右键> Create New Group > Packed Assets 新建远程资源的组,命名为“Remote Test Group”:
并修改远程资源组的加载和打包的位置设置:
添加预设到Remote Test Group:
Build > New Build >Default Build Script 开始打包资源:
等待打包完成后,在“工程目录\ServerData\StandaloneWindows64\”目录下有打包生成的文件:
自此资源的准备工作准备完毕。
public void LoadRemoteSceneNodes() { if (remotescenenode == null) { Debug.Log("开始加载服务器远程场景!"); Addressables.LoadAssetAsync<GameObject>("RemoteSceneNode").Completed += OnRemoteLoaded; } } void OnRemoteLoaded(AsyncOperationHandle<GameObject> obj) { if (obj.Result != null) { remotescenenode = Instantiate(obj.Result, Vector3.zero, Quaternion.identity); remotescenenode.transform.localPosition = new Vector3(6.2f, 3.8f, 0); remotescenenode.transform.SetParent(null); Debug.Log("服务器远程场景加载完成!"); } } public void DelRemoteSceneNodes() { if (remotescenenode != null) Destroy(remotescenenode); remotescenenode = null; Debug.Log("服务器远程场景卸载完成!"); }
按本地资源包的编码形式实现远程资源的加载和卸载功能,除了名称不一致,其余基本是一致的。
运行程序效果后发现加载正常:
按理来说资源服务器都未搭建不能正常运行才对,这里是因为运行脚本的模式为:
Use Asset Database,本机快速测试使用本模式,这里需要测试服务器,所以选择第三个选项:
选择Use Existing Build后运行就报错了:
以上显示就是正常了,就证明我们需要配置资源服务器了。
资源服务器可以使用hfs,或者其它的,商用项目可能需要谨慎选择,这时候我们只是测试所以这里我们使用了Addressables Hosting组件实现服务器配置,Window > Asset Management > Addressables > Hosting:
或者在Addressables Groups窗口内 Tools > Hosting Services 进入。
设置好端口号,还有服务器名称:
接下来就是勾选Enable选项启用。
在Addressables Profiles 新建一个配置项,命名为LocalHost,将远程加载地址(RemoteLoadPath)修改一下:
运行查看效果:
发现除了正常的功能外,还有了自带的资源服务器日志。
Addressables 可以提供了快速的资源更新功能,在Addressables Groups窗口Build > Update a Previous Build 即可,不过在这之前我们还得进行有点设置不然,功能是不正常的。
在Addressables Groups窗口 Tools > Inspect System Settings进入设置界面:
在设置界面内勾选Build Remote Catalog, 并且设置Build Path 和 Load Path 分别是远程资源的打包地址和加载地址:
修改后需要重新打一次包,我们将资源的材质球从蓝色修改成橙色,并更新打包:
等待打包完成后,我们的“ServerData\StandaloneWindows64”目录下多出了一个文件:
我们在运行程序,能看到修改的更新已经在程序中体现了:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。