我们有两个版本的程序,一个是游戏,另一个是使用相同的game.dll渲染到窗口的编辑器。游戏可以创建一个没有问题的图形诊断捕获。但是在捕获期间的编辑器中,我们在调用OMSetRenderTargets时看到了这个异常。 d3d11调用完全相同,唯一的区别是设备渲染到在C#应用程序而不是C ++游戏中创建的窗口。这仅在帧捕获正在进行时发生。
First-chance exception at 0x7626c42d in Editor.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x0045dbb4.
答案 0 :(得分:0)
关于std:bad_alloc与渲染目标相关的内存有关的理论。我玩了渲染目标的大小(在这种情况下是一个完整的水平覆盖),并发现图形诊断捕获无法处理超过2048x2048的渲染目标。看起来内存不足。