我在d3d11应用程序上做了一些事情,现在我在调用Present 后的某个时间发生了一次GPU崩溃,WDDM TDR重置发生了。
由于Present(也没有任何绘制调用!)函数再次返回HRESULT,我们应该如何找到问题?
答案 0 :(得分:2)
您需要打开DirectX调试信息并在程序运行时密切关注调试输出。
在 Direct3D10.x / 11 下打开 DIRECTX CONTROL PANEL ,
现在在DEBUG MODE中启动您的应用程序,您应该看到调试消息在运行时从DIRECT3D11溢出到Visual Studio输出窗口。在渲染代码中放置一个断点并逐步执行,直到看到WARNING或ERROR消息。这将有助于您解决问题。
ERROR消息中有大量信息 - 实际上比MSDN上提供的信息要多得多。奇怪的是,在D3D11调试器中存储了如此多的文档 它就是它。