|
|
我在程序里面填了如下代码:
LPDIRECT3DSURFACE9 ScreenShotSurface;
D3DDISPLAYMODE d3dm;
gSceneManager->getDevice()->GetDisplayMode(0,&d3dm);
gSceneManager->getDevice()->CreateOffscreenPlainSurface(d3dm.Width,d3dm.Height,d3dm.Format,D3DPOOL_DEFAULT, &ScreenShotSurface, NULL);
gSceneManager->getDevice()->GetBackBuffer(0,0,D3DBACKBUFFER_TYPE_MONO, &ScreenShotSurface);
D3DXSaveSurfaceToFile(L"save.bmp",D3DXIFF_BMP,ScreenShotSurface,NULL,NULL);
ScreenShotSurface->Release();
我觉得资源应该释放了,但是结束程序总是提醒我引用计数不为零。
我调试了一下,如果把
gSceneManager->getDevice()->GetBackBuffer(0,0,D3DBACKBUFFER_TYPE_MONO, &ScreenShotSurface);
去掉,就不会有提示了,这个除了最后的那句释放外还需要怎么释放呢? |
|