Version:

本文内容

资产处理和资产管道

Open 3D Engine (O3DE) 中,资产是保存在磁盘上的资源文件,O3DE以某种方式使用该文件。资产包括在第三方应用程序中创建的网格、纹理、动画和音频文件,以及使用 O3DE 工具和自动流程创建的资产。

大多数资产必须经过某种形式的处理,才能生成可被O3DE EditorLauncher使用的运行时优化文件。例如,以.png文件形式存储的纹理经过处理后生成的文件可以流式传输并有效地存储在显卡(GPU)内存中。这个端到端的过程就是资产管道

在 O3DE 中,资产可分为两类:资产和产品资产。源资产是使用第三方应用程序和 O3DE 工具创建的可移植资产。这些是资产管道的输入。产品资产是 O3DE 编辑器和启动器所需的运行优化资产。这些是资产管道的产品。

资产管道概述

当您启动 O3DE 编辑器时,资产处理器会启动,并在您使用 O3DE 时作为后台服务运行。资产处理器监控一组预先配置的 扫描目录以查找源资产。当资产处理器检测到新的或已更改的源资产时,它会确定需要进行哪些处理。然后,它会排队等待处理源资产的任务。源资产类型的资产生成器会生成产品资产。经过运行优化的产品资产存储在项目的**资产缓存中。这样,您的项目资产就会不断更新。新的和更新的资产可以尽快使用,并在运行时热加载到 O3DE 编辑器和启动器中。O3DE Editor 中使用的资产与部署运行时使用的资产相同。

下面是一个简单的流程图,显示了网格文件的处理过程。

Mesh processing flowchart example

  1. 源资产放置在资产处理器监控的扫描目录中。
  2. 资产处理器检测新的或已更改的源资产。
  3. 资产处理器确定源资产的内容和处理方式。
  4. 资产处理器创建一个任务来处理源资产。
  5. 资产生成器可为特定部署平台生成运行时优化的产品资产。
  6. 资产处理器收集有关任务和产品资产的信息,并更新资产缓存。
  7. 产品资产可由 O3DE 编辑器和启动器加载。

在上面的网格处理图中,包含网格的.fbx文件(源资产)会在资产缓存中生成一个.azmodel和多个.azbuffer文件(产品资产)。资产生成器通常会从一个源资产生成多个产品资产,尤其是艺术资产。