您可以在 Shader 窗格中查看轨迹中使用的各个着色器。
如需使用此窗格,请在列表中选择一个着色器。这会创建一个新标签页,其中会显示着色器的来源以及静态分析统计信息。
如需查看绑定到流水线中特定阶段的特定着色器,请在流水线视图中查看该阶段。
![“Shader”窗格](https://developer.android.google.cn/static/images/games/agi/pane-shader.png?authuser=9&hl=nl)
选择着色器代码
您可以选择 SPIR-V,也可以选择 GLSL(如果可能)。注意:
- 如果 SPIR-V 代码在其 OpSource 指令中提供原始 GLSL 代码,则 GLSL 标签页仅显示相同的代码。否则,AGI 会尝试使用 SPIRV-Cross 将 SPIR-V 反编译为 GLSL。
- 如果反编译出错,则无法使用显示 GLSL 源代码的选项。
静态分析
AGI 提供来自 SPIR-V 着色器静态分析的统计信息。以下是受支持的统计信息:
统计 | 说明 |
---|---|
ALU 说明 | 使用 ALU 的着色器中的指令数。 |
纹理说明 | 着色器中的纹理提取次数。 |
分行说明 | 着色器中的分支指令数。 |
峰值临时寄存器压力 | 并发活跃临时寄存器的数量上限。临时值的生命周期从其定义开始,到最后一次在着色器中使用的时间结束。该统计信息会将每个实时值使用的寄存器数量相加 p(例如,4D 浮点数为 4 个寄存器)。 |