我有ID3D11ShaderResourceView * textureResView
,我想将该纹理保存到文件中。我想我应该先从中提取ID3D11Texture2D
出来,所以我做了一个代码:
ID3D11Resource * res;
ID3D11Texture2D * tex;
textureResView->GetResource(&res);
res->QueryInterface(&tex);
HRESULT result = D3DX11SaveTextureToFile(
g_pImmediateContext, tex, D3DX11_IFF_PNG, "name.png");
不幸的是,返回E_FAIL
。我做错了什么?