My code is as the following:
//set the render state
m_pD3dDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
m_pD3dDevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
m_pD3dDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);
//create a surface and load the image
HRESULT hResult=D3DXGetImageInfoFromFile(imageFile,&imageInfo);
if(S_OK!=hResult)
return NULL;
hResult=m_pD3dDevice->CreateOffscreenPlainSurface(imageInfo.Width,
imageInfo.Height,D3DFMT_A8R8G8B8,D3DPOOL_DEFAULT,
&surface/*m_pSurface[m_nSurfaceUsed]*/,NULL);
if(S_OK!=hResult)
return NULL;
hResult=D3DXLoadSurfaceFromFile(surface/*m_pSurface[m_nSurfaceUsed]*/,NULL,NULL,
imageFile,NULL,D3DX_DEFAULT,colorKey,NULL); //i have sat the colorkey as 0xffff00ff
hResult=m_pD3dDevice->StretchRect(surface,res,m_pBackBuffer,dest,D3DTEXF_NONE);
i know that i can use another metohd to display this image ,such as IDXSprite,but i always want to know why my code doesnt work .
where is woring or the StretchRect function doesnt support the transprarency color ? anybody can help me?Thanks!