版本:Unity 6 (6000.0)
语言:English
为 URP 中的计算着色器创建输入数据
在渲染图渲染通道中使用兼容模式 API

分析 URP 中的渲染图

有多种方法可以分析渲染图

使用渲染图查看器

要打开**渲染图查看器**窗口,请转到**窗口 > 分析 > 渲染图查看器**。

渲染图查看器窗口显示一个渲染图,它是通用渲染管线一系列操作,用于获取场景的内容并在屏幕上显示它们。Unity 允许您从预构建的渲染管线中选择,或编写您自己的渲染管线。 更多信息
参见 词汇表
(URP) 在每一帧中执行的操作序列。渲染图查看器显示内置渲染通道和您创建的任何自定义渲染通道

有关**渲染图查看器**窗口的更多信息,请参阅渲染图查看器窗口参考

查看渲染图

**渲染图查看器**窗口默认显示当前场景场景包含游戏环境和菜单。将每个唯一的场景文件视为一个唯一的关卡。在每个场景中,您放置环境、障碍物和装饰物,本质上是分段设计和构建游戏。 更多信息
参见 词汇表
的渲染图。要选择其他渲染图,请使用工具栏Unity 编辑器顶部的按钮和基本控件行,允许您以各种方式与编辑器交互(例如缩放、平移)。 更多信息
参见 词汇表
中的下拉列表。

示例:检查 URP 如何使用资源

您可以使用资源名称旁边的资源访问块来检查渲染通道如何使用该资源。

Render Graph Viewer example
渲染图查看器示例

在前面的示例中,_MainLightShadowmapTexture_ 纹理会经历以下阶段

  1. 在**InitFrame**和**SetupCameraProperties**之间的前五个渲染通道期间,纹理不存在。

  2. **主光阴影贴图**渲染通道将纹理创建为全局纹理,并对其具有写访问权限。有关全局纹理的更多信息,请参阅在通道之间传输纹理

    **主光阴影贴图**下方的蓝色合并栏表示 URP 将**主光阴影贴图**、**附加光阴影贴图**和**SetupCameraProperties**合并到单个渲染通道中。

  3. 接下来的五个渲染通道无法访问该纹理。

  4. 第一个**绘制对象**渲染通道对纹理具有只读访问权限。

  5. 接下来的两个渲染通道无法访问该纹理。

  6. 第二个**绘制对象**渲染通道对纹理具有只读访问权限。

  7. Unity 销毁纹理,因为它不再需要。

检查 URP 如何优化渲染通道

要检查渲染通道的详细信息,例如找出它为什么不是本机渲染通道或合并通道,请执行以下任一操作

  • 选择渲染通道名称以在通道列表中显示详细信息。
  • 在渲染通道名称下方,将光标悬停在灰色、蓝色或闪烁的蓝色资源访问概述块上。

有关显示渲染通道详细信息的更多信息,请参阅渲染图查看器窗口参考

使用渲染调试器

您可以使用渲染调试器在**控制台**窗口中记录 URP 使用的资源以及它如何使用这些资源。

要启用日志记录,请执行以下步骤

  1. 选择**窗口 > 分析 > 渲染调试器**以打开**渲染调试器**窗口。
  2. 在左侧窗格中,选择**渲染图**选项卡。
  3. 启用**启用日志记录**。
  4. 选择**记录帧信息**以记录 URP 如何使用资源,或选择**记录资源**以记录有关资源的详细信息。
  5. 选择**控制台**窗口中的新项目以显示完整日志。

有关渲染调试器的更多信息,请参阅渲染调试器

使用帧调试器

使用帧调试器检查渲染循环中的渲染通道和绘制调用。

当渲染图系统处于活动状态时,帧调试器在事件层次结构面板中显示以下内容

  • 一个名为**ExecuteRenderGraph**的父渲染事件。
  • 名为**(RP <render-pass>:<subpass>)**的子渲染事件,其中<render-pass>是渲染通道编号,<subpass>是子通道编号。

帧调试器仅显示包含绘制调用的渲染通道。

有关帧调试器的更多信息,请参阅帧调试器

其他资源

为 URP 中的计算着色器创建输入数据
在渲染图渲染通道中使用兼容模式 API