如何在Visual Studio 2017中启动HLSL调试器?

Mic*_*ich 2 c++ directx hlsl windows-10 visual-studio-2017

我找不到在Visual Studio 2017中启动HLSL调试器的选项.

Microsoft文档指示从Graphics Pipeline Stages窗口或Graphics Pixel History启动它

https://msdn.microsoft.com/en-us/library/hh873197.aspx

但是,我不知道它们是什么或如何到达它们

当我直接在visual studio IDE中的hlsl代码中设置断点时,它只会The Breakpoint will not currently be hit在空的红色圆圈上显示" ".我假设我需要在hlsl调试器中打开hlsl代码,以便它在行中断开.

我正在DirectX 11 App(Universal Windows)x64调试模式下运行一个新的项目模板,并在顶点和像素着色器中设置断点.

谢谢,

use*_*670 7

  1. 确保使用调试支持编译着色器 - /Zi如果使用HLSL编译器,则使用该选项.
  2. 确保在启用调试(D3D11_CREATE_DEVICE_DEBUG标志)的情况下创建DX设备.
  3. 通过进入主菜单 - >调试 - >图形 - >启动图形调试启动GFX调试会话.这将创建一个窗口,要求提升权限,启动程序并使用"捕获帧"按钮和时间线显示诊断会话窗口.
  4. 现在让您的应用程序显示所需的图像,并使用相应的按钮捕获迭代的帧.捕获的帧截图将出现在列表中.
  5. 关闭你的申请.这将触发diag会话的最终化(一些后处理),这将花费一些时间.
  6. 单击捕获帧列表中的帧名称(蓝色).这将打开VS图形分析器窗口 - 这是您实际调试图形的地方.
  7. 在中间会有一个(转载的)帧渲染截图 - 你可以点击它上面的任何地方,在像素历史窗口,应该有一个修改该像素的绘制调用列表.通过扩展此列表,您应该能够找到感兴趣的着色器的调用.它应该有"Play"三角形按钮启动着色器调试并跳转到着色器代码,您可以在其中检查变量,设置断点和其他内容.
  8. 或者在左侧有一个事件列表,其中包含所有管道修改和绘制(用画笔标记)调用.在那里找到感兴趣的抽奖电话并选择它.在Pipeline阶段窗口中,应该有一个图表,其中每个阶段的产品的屏幕截图都有相应的着色器链接,而"Play"按钮则启动着色器调试.

  • 主菜单 -> 调试 -> 图形 -> 开始图形调试在我的 Visual Studio 2019 上显示为灰色 (2认同)