|
|
我创建了个离屏表面,然后读取一个tga到离屏表面之后,用StretchRect()到后背缓冲。
为什么我用D3DXLoadSurfaceFromFile()读取一个tga文件后,设置的colorkey无效阿 还是有背景 。
黑色背景应该是0x00000000还是0xff000000阿?
LPDIRECT3DSURFACE9 GetSurfaceFromFile(LPTSTR filename)
{
LPDIRECT3DSURFACE9 surface;
HRESULT hresult;
D3DXIMAGE_INFO imageinfo;
hresult=D3DXGetImageInfoFromFile(filename,&imageinfo);
if(FAILED(hresult))
return NULL;
hresult=g_pd3dDevice->CreateOffscreenPlainSurface(imageinfo.Width,
imageinfo.Height,
D3DFMT_A8R8G8B8,
D3DPOOL_DEFAULT,
&surface,
NULL);
if(FAILED(hresult))
return NULL;
hresult=D3DXLoadSurfaceFromFile(surface,NULL,NULL,filename,NULL,D3DX_DEFAULT,0xff000000,NULL);
if(FAILED(hresult))
return NULL;
return surface;
} |
|