您想找什么?
Hero background image

使用 Addressables 简化内容管理

了解可寻址资产系统如何简化您在编辑和运行时的内容管理,从而使您的游戏的初始和更新发布更加顺畅和更容易。本文基于现场内容团队的 Bill Ramsour 在 Unite Copenhagen 2019 大会上的演讲。

可寻址资源概述

可寻址资产系统(即Addressables)是一个Unity编辑器和运行时资产管理系统,可增强对具有复杂实时内容交付需求的大型制作团队的支持。系统采用异步加载方式,支持从任意位置、任意依赖项集合进行加载。通过更有效地打包资产包并减少迭代时间,Addressables 提供了一种让您的游戏更具动态的简单方法。

Addressables 解决了开发人员面临的挑战,例如迭代时间、依赖管理、内存管理和内容打包。

可寻址工作流程
Addressables 工作流程

一旦资产(例如,预制件)被标记为“可寻址”,它就会生成一个可以从任何地方调用的地址。无论资产位于何处(本地或远程),系统都会找到它及其依赖项,然后返回它。资产是您用来创建游戏或应用程序的内容。资产的常见示例包括预制件、纹理、材质、音频剪辑和动画。

Addressables 抽象了资产包,使内容管理更加高效,同时包含资产及其所有底层数据。

在 Addressables 工作流中,请求首先通过 Catalog 系统。系统将地址解码为位置,该位置由构建期间生成的数据组成,包括资产是什么、资产的依赖关系、资产是本地的还是远程的等等。

从目录中,请求通过提供商系统。一个或多个提供商使用这些位置来查找内容,然后将其返回给设备。

在 Addressables 中,运行时是异步的。这使您可以灵活地在需要时检索资产,无论它在哪里 - 它的位置可能会根据您所处的开发阶段而改变 - 而无需更改游戏代码。

可寻址组
可寻址组

当你将某物标记为可寻址时,它将成为可寻址组的一部分,可寻址组是可寻址资产及其数据的容器。您可以在“组”窗口中直观地看到这些组,这是可寻址对象的大本营。团体可以确定该资产是否位于本地设备或服务器上。

可寻址组的数据保存在模式中,模式是数据契约。其中一个模式重点关注如何将您的资产和内容构建成捆绑包。构建路径加载路径 是比较有用的设置,允许您通过从下拉菜单中选择变量将内容设置为本地或远程。

在可寻址配置文件系统中,您可以为可寻址组创建一个配置文件,然后为给定的配置文件定义希望变量评估的内容。这使您可以设置您的组上的数据并远程对其进行更改,而无需对该组的任何部分重新编码。

制作

为了充分利用可寻址资源,它可以帮助您根据您想要发布游戏的方式可视化您的数据。您不必致力于结构,因为在开发过程中更改配置文件变量很容易,但您应该有一个组织捆绑包的通用方法。

例如,如果您想要使用远程内容来发布您的游戏,但您希望该内容在开发期间是本地的,那么您可以创建一个配置文件,其中远程路径指向流资产。通过这种方式,您可以全局地将所有远程内容更改为本地内容,而无需触及组的代码。

可寻址编辑器托管
編輯托管

有时您需要在服务器上托管内容。您可以设置远程路径,并且使用托管服务定义的变量,而不是指向实际的 URL。

当您启用托管时,托管服务会在编辑器内设置一个 HTTP 主机。您可以将您的设备或播放器连接到该主机,以便进行测试。

编辑器托管的一个强大功能是您可以将所有内容设置为远程。这对于内容开发者和艺术家来说尤其有用,因为您可以构建播放器并将其部署到您的设备,同时继续迭代您的内容。您不必重新部署播放器或担心将内容从一个设备移动到另一个设备。 查看我们的 文档 以了解有关使用 Addressables 创建和配置托管服务的更多信息。

尽管 Addressables 解决了支持动态内容的许多关键技术挑战,但“最后一英里”问题仍然存在,即向实时制作的游戏和应用程序托管和交付资产。今年晚些时候,我们将推出一款企业级的全球内容托管解决方案,该解决方案完全集成到 Addressables 系统中。如果您想了解有关此服务的更多信息, 请在此处注册

如何在 Addressables 中加载资源

实时内容团队一直致力于改进工作流程以加快您的处理速度,其中包括一些快速加载资产的方法。

如何在 Addressables 中加载资源?

按地址:程序员通常会通过字符串加载可寻址内容,并使用资产的位置标识符来轻松进行运行时检索。

按标签:提供额外的可寻址资产标识符,用于运行时加载类似项目。

作者:AssetReference:AssetReference 的操作类似于直接引用,但具有延迟初始化。AssetReference 对象将 GUID 存储为可寻址的,您可以根据需要加载。在编辑器中工作的 艺术家可能更喜欢这种工作流程。

如果您引用的资产具有子对象(例如 SpriteAtlas 中的精灵),您可以进一步引用该子对象。

如果您想了解 Addressables 和精灵加载过程的实际操作,请查看会话的 精灵演示部分

可寻址定制您的构建
定制你的构建

Addressables 包有三个构建脚本,可以创建播放模式数据,帮助您加速应用程序开发。这些脚本包括 使用资产数据库、模拟组使用现有构建

使用资产数据库 脚本。这使您可以在迭代内容时进出播放模式;您可以在完成游戏流程的同时快速运行游戏。它直接通过资产数据库加载资产以进行快速迭代,无需分析或创建资产包。

Simulate Groups 无需创建资源包即可分析内容的布局和依赖关系。要查看资源包在游戏过程中何时加载或卸载,请在 Addressables 事件查看器窗口 (Window > Asset Management > Addressables > Event Viewer) 中查看资源使用情况。此模式可帮助您模拟加载策略并调整内容组以找到适合生产版本的正确平衡。

使用现有构建 脚本就像已部署的应用程序构建,但它要求您将数据构建作为单独的步骤。如果您不修改资产,此模式是最快的,因为它在进入播放模式时不会处理任何数据。

在哪里可以了解有关 Addressables 的更多信息?

如果您想在项目中使用可寻址资源,请查看 可寻址资产系统文档 以了解如何开始。阅读我们的 博客文章,查看 GitHub 示例,或加入 论坛讨论。

Cloud Content Delivery最后一英里

Cloud Content Delivery(CCD) 于 2020 年 9 月推出,是我们自己的企业级全球内容托管解决方案,完全集成到 Addressables 系统中。借助 CCD,您可以通过云实现强大的资产管理和内容交付,轻松构建和发布游戏更新 - 这是实时游戏和应用程序运行的基本功能。在此了解更多信息并注册。

您喜欢本文吗?