|
|
平台 2005 DX9C
//导入表面数据,颜色键为0x0(黑色)
LPDIRECT3DSURFACE9 g_Surface =NULL;
D3DXIMAGE_INFO Info;
D3DXGetImageInfoFromFile("D:\image.jpg", &Info);
g_pd3dDevice->CreateOffscreenPlainSurface(Info.Width, Info.Height,
Info.Format, &g_Surface, NULL);
D3DXLoadSurfaceFromFile(g_Surface, NULL, NULL, "D:\image.jpg", NULL,
D3DX_FILTER_NONE, 0x0, NULL);
//渲染的时候调用
HRESULT hr;
LPDIRECT3DSURFACE9 BackBuffer = NULL;
g_pd3dDevice->GetBackBuffer(0,0,D3DBACKBUFFER_TYPE_MONO, &BackBuffer);
//这个 渲染OK
RECT pDestRect = {0, 0, m_nWidth, m_nHeight };
hr = m_pd3dDev->StretchRect( m_pd3dSurface, NULL, BackBuffer, &pDestRect, D3DTEXF_NONE );
//UpdateSurface失败
hr = g_pd3dDevice->UpdateSurface(g_Surface, NULL, BackBuffer, NULL);
//hr为负
if(BackBuffer != NULL)
BackBuffer->Release();
还有渲染出来的 颜色键 没有 过滤调,还是黑色的.
大虾,请问上面那里出现 问题了呢 ?
谢谢
if(g_Surface!= NULL)
g_Surface ->Release();
问题:
|
|