有几种方法可用于分析渲染图:
要打开渲染图查看器 (Render Graph Viewer) 窗口,请选择窗口 (Window) > 分析 (Analysis) > 渲染图查看器 (Render Graph Viewer)。
Render Graph Viewer 窗口显示一个渲染图,这是通用渲染管线 (URP) 逐步完成每一帧的经过优化的渲染序列。Render Graph Viewer 显示内置渲染通道和您创建的任何自定义渲染通道。
有关 Render Graph Viewer 窗口的更多信息,请参阅渲染图查看器 (Render Graph Viewer) 窗口参考。
默认情况下,渲染图查看器 (Render Graph Viewer) 窗口显示当前场景的渲染图。要选择另一个渲染图,请使用工具栏中的下拉选单。
您可以使用资源名称旁边的资源访问块来检查渲染通道如何使用资源。
在前面的示例中,_MainLightShadowmapTexture_ 纹理经历了以下几个阶段:
在 InitFrame 和 SetupCameraProperties 之间的前五次渲染通道中,纹理不存在。
主光源阴影贴图 (Main Light Shadowmap) 渲染通道将纹理创建为全局纹理,并且对其具有只读访问权限。有关全局纹理的更多信息,请参阅在通道之间传输纹理。
主光源阴影贴图 (Main Light Shadowmap) 下方的蓝色合并栏表示 URP 将主光源阴影贴图 (Main Light Shadowmap)、附加光源阴影贴图 (Additional Lights Shadowmap) 和 SetupCameraProperties 合并到单个渲染通道。
接下来的五个渲染通道无法访问纹理。
第一个绘制对象渲染通道对纹理具有只读访问权限。
接下来的两个渲染通道无法访问纹理。
第二个绘制对象渲染通道对纹理具有只读访问权限。
Unity 会销毁该纹理,因为不再需要该纹理。
要检查渲染通道的详细信息,例如,要了解其不是原生渲染通道或合并通道的原因,请执行以下操作之一:
有关显示渲染通道详细信息的更多信息,请参阅渲染图查看器 (Render Graph Viewer) 窗口参考。
您可以使用渲染调试器在控制台 (Console) 窗口中记录 URP 使用的资源及其如何使用它们。
要启用日志记录,请遵循以下步骤:
有关渲染调试器的更多信息,请参阅渲染调试器。
使用帧调试器可检查渲染通道并在渲染循环中绘制调用。
当渲染图系统处于活动状态时,帧调试器在 Event Hierarchy 面板中显示以下内容:
<render-pass> 表示渲染通道编号,<subpass> 表示子通道编号。帧调试器仅显示包含绘制调用的渲染通道。
有关帧调试器的更多信息,请参阅帧调试器。