我正在尝试使用NSight在VS2012中调试HLSL着色器,但它无法启动。
当我点击"开始图形调试"时,它似乎启动了应用程序片刻,然后关闭它(来自NSight的输出窗口显示了几个"着色器已加载" / "着色器卸载"线)。 Windows事件日志没有显示任何内容(除了" NVIDIA网络服务"无法启动,但如果我理解得很好,这与更新有关。)
另一方面,如果我启动GPU Perfomannce分析,那么它运行正常。
有没有可以看到日志的地方?
或者,是否有其他方法可以在Windows上调试HLSL着色器,可能在Visual Studio之外?
答案 0 :(得分:1)
Visual Studio 2012和2013拥有自己的图形调试引擎。它非常好,特别是在使用Windows 8.1时使用VS2013,但我相信它也适用于VS2012 + Win7。您可以从Debug-> Graphics-> Start Diagnostics启动诊断会话。应用程序运行后,捕获一个框架并在诊断工具中打开它。您可以查看缓冲区内容,纹理甚至单步着色器。
存在一些错误和限制,但最好的是效果很好。我也试过了NSight和PerfStudio,但从来没有让它像VS一样工作。