首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

将实时获取的cubeTexture中的6个贴图存到bmp文件中的有关问题

2012-03-03 
将实时获取的cubeTexture中的6个贴图存到bmp文件中的问题LPDIRECT3DSURFACE9 pSurfg_apCubeMap-GetCubeM

将实时获取的cubeTexture中的6个贴图存到bmp文件中的问题
LPDIRECT3DSURFACE9 pSurf;
g_apCubeMap->GetCubeMapSurface((D3DCUBEMAP_FACES)nFace,0,&pSurf);
g_Direct3DDevice9->SetRenderTarget(0,pSurf);

//这块是依次渲染到6个面,也就是渲染到了pSurf上,省略了很多的代码
.....
render()
......

LPDIRECT3DSURFACE9 pDest;
g_Direct3DDevice9->CreateOffscreenPlainSurface(256,256,D3DFMT_A8R8G8B8,D3DPOOL_DEFAULT,&pDest,NULL);
g_Direct3DDevice9->GetRenderTargetData(pSurf,pDest);
D3DXSaveSurfaceToFile(pFileName,D3DXIFF_BMP,pDest,NULL,NULL);

现在的bmp文件打开后,黑色中夹杂了部分色块。
一直没有找到原因,大侠帮忙

[解决办法]
直接g_apCubeMap->GetCubeMapSurface((D3DCUBEMAP_FACES)nFace,0,&pSurf);
然后D3DXSaveSurfaceToFile(pFileName,D3DXIFF_BMP,pSurf,NULL,NULL); 
不可以么?

热点排行