“Shader”窗格

您可以在 Shader 窗格中查看轨迹中使用的各个着色器。

如需使用此窗格,请在列表中选择一个着色器。这会创建一个新标签页,其中会显示着色器的来源以及静态分析统计信息。

如需查看绑定到流水线中特定阶段的特定着色器,请在流水线视图中查看该阶段。

“Shader”窗格
图 1. Shader 窗格

选择着色器代码

您可以选择 SPIR-V,也可以选择 GLSL(如果可能)。注意:

  • 如果 SPIR-V 代码在其 OpSource 指令中提供原始 GLSL 代码,则 GLSL 标签页仅显示相同的代码。否则,AGI 会尝试使用 SPIRV-Cross 将 SPIR-V 反编译为 GLSL。
  • 如果反编译出错,则无法使用显示 GLSL 源代码的选项。

静态分析

AGI 提供来自 SPIR-V 着色器静态分析的统计信息。以下是受支持的统计信息:

统计 说明
ALU 说明 使用 ALU 的着色器中的指令数。
纹理说明 着色器中的纹理提取次数。
分行说明 着色器中的分支指令数。
峰值临时寄存器压力 并发活跃临时寄存器的数量上限。临时值的生命周期从其定义开始,到最后一次在着色器中使用的时间结束。该统计信息会将每个实时值使用的寄存器数量相加 p(例如,4D 浮点数为 4 个寄存器)。