坑爹的DirectX9设备丢失问题

时间:2021-03-14 17:05:41

   今天遇到一个设备丢失的问题,浪费我好长时间才跟出来,真坑爹!结果是用到了一个ID3DXEffect接口,设备丢失时没有处理造成的。每次遇到设备丢失的问题都要跟踪好长时间才能搞定。所以给个建议:每当在系统中添加一个新的资源或者使用一个新的接口时,一定要处理其设备丢失问题,否则以后处理起来会很费劲!

    下面总结一下设备丢失时需要处理的一些资源,暂时只想到这么多,如果有不完善的地方还请各位补充!

     1. 系统中使用D3DPOOL_DEFAULT类型创建的资源

     2.  使用函数IDirect3DDevice9::CreateRenderTarget和IDirect3DDevice9::CreateDepthStencilSurface 创建的资源

     3. IDirect3DSwapChain9

     4. ID3DXSprite

     5. IDirect3DQuery9

     6. ID3DXFont

     7. ID3DXLine

     8. ID3DXEffect