着色器调试器允许您在应用程序内部调试 HLSL 和 ASM 的像素、计算和顶点着色器。它可以让您逐行步进您的着色器,并查看每个像素的寄存器、变量和常量值。甚至可以插入断点,以便您可以快速跳转到特定行并开始调试。为了帮助理解着色器的流程控制,绘制掩码图像会可视化前一个指令写入了哪些像素。
着色器调试器功能
- 逐行步进 HLSL 或 ASM 代码
- 查看每个像素的寄存器、常量和变量值
- 插入断点并运行至断点
- 前进或后退
- 查看每个指令的绘制掩码
最新消息
- 现在支持 DX11 顶点着色器调试。
- 着色器调试器现在是一个模态窗口,在开始调试时会扩展以填充客户端窗口的 90%。
- 寄存器缓冲区现在可以在数据网格模式下查看,允许用户一次查看多个寄存器值。

此屏幕截图显示了一个典型的着色器调试会话。通过 HLSL 或汇编代码的步进更新右侧的绘制掩码,并更新底部的变量表。
着色器调试器提供了一个代码窗口,其中包含常规的调试功能,包括用户断点、运行至、后退、前进和后退。两个图像提供了对着色器当前输出的像素值的访问。一个图像显示了指示已渲染像素的绘制掩码,第二个图像显示了这些像素的当前寄存器值。此外,还显示了当前常量和变量缓冲区值的表。用户可以单击任一图像中的像素来选择正在调试的像素。

着色器调试器将断点处的着色器输出渲染到交换链。这允许您在应用程序屏幕上以及在绘制掩码中查看着色器的渲染位置。

此图像显示了以数据网格形式显示的寄存器掩码,让您可以一目了然地看到多个值。单击绘制掩码中的像素会将数据网格中对应的单元格置于寄存器窗口的中间。顶点着色器调试输出以数据网格模式显示。