在 directx cpl 中选择调试版本后,我有这样的输出:
Direct3D9: (WARN) :Ignoring redundant SetTextureStageState. Stage: 0, State: 3
Direct3D9: (ERROR) :Memory Address: 008307ec lAllocID=1 dwSize=00004bc4, ReturnAddr=7248d5ea (pid=000017d4)
是否可以定义一个回调,当这些通知被添加到控制台时触发,就像键盘/鼠标输入一样?我希望能够根据这些信息做更多事情。
最佳答案
不,这不可能。但是,您可以通过 DirectX 控制面板设置“错误时中断”、“泄漏时中断”并中断特定的 AllocID。
我不确定是否有办法打破警告...
编辑:在出现上述冗余渲染状态更改的情况下,这些问题很容易修复。只需确保您记住管道当前设置的内容,并且仅在某些内容发生更改时才设置。因此多余的警告将消失:)
关于c++ - 我可以在记录错误时让 DirectX(任何版本)回调吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1754588/