本文主要是介绍Addressable:5、资源托管服务(Asset Hosting Services),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、总览
托管服务提供了一个集成的功能,在Unity编辑器可以使用可寻址资源配置数据,提供给本地或网络连接的构建应用程序打包的内容。托管服务旨在提高测试打包内容时的迭代速度,还可以用于向本地和远程网络上连接的客户端提供内容。
1.Packed mode测试和迭代
从编辑器播放模式测试到平台应用程序构建测试的转变为开发过程带来了复杂性和时间成本。Hosting Services提供可扩展的,嵌入编辑器的内容交付服务,这些服务直接映射到您的Addressables组配置。使用自定义的可寻址配置文件,您可以快速配置应用程序以从Unity Editor本身加载所有内容。这包括部署到移动设备或任何其他平台的构建,它们可以通过网络访问您的开发系统。
2.Turn-key 内容服务器
您可以将资产托管服务部署到服务器环境中,以批处理模式(headless)运行,为内部网和面向internet的Unity应用程序客户端托管内容。
2、设定
本文详细介绍了您的项目的资产托管服务的初始设置。虽然安装指南侧重于编辑器工作流,但是可以通过设置 AddressableAssetSettings 类的 HostingServicesManager 来使用API配置托管服务。
1.配置新的托管服务
使用 Hosting window 添加,配置和启用新的主机服务。在编辑器中,选择Window > Asset Management > Addressables > Hosting,或从 Addressables Groups 窗口菜单中单击 Tools > Hosting Services 按钮以访问 Addressables Hosting 窗口。
在 Addressables Hosting 窗口中添加新的本地主机服务,请单击 Create > Local Hosting 按钮,添加新的托管服务。如下:
注意:有关实现自定义托管服务类型的更多信息,请参阅关于自定义服务的部分。
新添加的服务将出现在 Addressables Hosting 窗口的 Hosting Services 部分中。使用Service Name 字段输入服务器名称。
新服务默认为禁用状态。要启动服务,请选中启用(Enable)复选框。
添加服务后,更新的 Addressables Hosting 窗口。
HTTP Hosting Service 在启动时会自动分配一个端口号。端口号已保存并在Unity会话之间重复使用。
要选择其他端口,请在端口(Port )字段中分配特定的端口号,或使用重置(Reset )按钮随机分配其他端口。
注意:如果您重置端口号,则必须执行完整的应用程序构建以生成和嵌入正确的URL。
HTTP Hosting Service 现在已启用,可以为每个资产组的BuildPath中指定的目录提供内容。
2.配置文件设置(Profile setup)
在开发期间使用 Hosting Services 时,Unity建议创建一个配置文件,配置所有资产组,使用一个或多个专门为此目的创建的目录从 Hosting Service 加载内容。
在编辑器中,选择 Windows > Asset Management > Addressables > Profiles,或从Addressables Groups 窗口菜单中单击 Tools > Profiles 按钮以访问配置文件(Profiles )窗口。您还可以通过AddressableAssetSettings 检查器访问这些设置。
接下来,创建一个新的配置文件。在以下示例中,新的配置文件称为“托管的编辑器(Editor Hosted)”。
创建服务配置文件:
修改加载路径字段以改为从Hosting Service加载。HttpHostingService是使用本地IP地址和分配给服务的端口的URL。在 Addressables Hosting 窗口中,您可以使用配置文件变量名为PrivateIpAddress和HostingServicePort来构造URL(例如,http://[PrivateIpAddress]:[HostingServicePort])。
此外,您应该修改所有构建路径变量,以指向项目的Assets文件夹之外的公共目录。
配置服务的配置文件:
验证每个组的配置是否正确。确保将BuildPath和LoadPath路径设置为它们各自的配置文件密钥,这些配置文件密钥已被修改以用于Hosting Services。在此示例中,您可以看到如何LoadPath扩展中的配置文件变量以构建正确的基本URL,以便从Hosted Services加载。
检查服务的加载路径:
最后,从 Addressables Groups 窗口中选择新的配置文件,创建一个版本,然后部署到目标设备。现在通过Unity编辑器HttpHostingService服务为应用程序提供所有加载请求。您现在可以添加和更改内容,而无需重新部署。重建可寻址内容,然后重新启动已部署的应用程序以刷新内容。
选择一个主机服务配置文件:
3.批处理模式
您还可以从Unity Editor下运行批处理模式来使用Hosting Services。为此,请使用以下选项从命令行启动Unity:
-batchMode -executeMethod UnityEditor.AddressableAssets.HostingServicesManager.BatchMode
这将从默认AddressableAssetSettings对象加载Hosting Services配置,并启动所有已配置的服务。
要使用替代AddressableAssetSettings配置,请创建您自己的静态方法入口点,以通过UnityEditor.AddressableAssets.HostingServicesManager.BatchMode(AddressableAssetSettings settings)重载进行调用。
3、自定义服务(Custom services)
Hosting Services的设计具有可扩展性,允许您实现自己的自定义逻辑,以便为可寻址资产系统中的内容加载请求提供服务。例如:
- 支持使用非HTTP协议下载内容的自定义IResourceProvider。
- 管理用于提供与生产CDN解决方案(例如:Apache HTTP服务器)匹配的内容的外部流程。
1.实现自定义服务
HostingServicesManager可以管理实现IHostingService接口任何类(用于方法参数和返回值的更多详细信息,请参阅API文档。
创建一个新的自定义服务:
-
遵循上面配置新的Hosting Service部分中概述的步骤,但是不要选择Create > Local Hosting按钮,而是选择 Create > Custom Service 按钮。
-
将适用的脚本拖放到其字段中,或从对象选择器中选择它。该对话框将验证所选脚本是否实现了该IHostingService接口。
-
要完成添加服务,请单击 Add按钮。
继续,您的自定义服务将出现在服务类型下拉选项中。添加自定义资产托管服务:
这篇关于Addressable:5、资源托管服务(Asset Hosting Services)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!