1
我正在尋找一種可能性來估計Direct3D中的空閒紋理內存,就像使用IDirect3DDevice9::GetAvailableTextureMem
一樣,但目前爲止還沒有發現任何東西。有什麼建議麼?GetAvailableTextureMem在Direct3D 11
我正在尋找一種可能性來估計Direct3D中的空閒紋理內存,就像使用IDirect3DDevice9::GetAvailableTextureMem
一樣,但目前爲止還沒有發現任何東西。有什麼建議麼?GetAvailableTextureMem在Direct3D 11
您可以使用此代碼片段:
int getAviableVideoMemoryInBytes(ID3D11Device* pd3dDevice)
{
assert(pd3dDevice);
IDXGIDevice * pDXGIDevice = nullptr;
HRESULT hr = pd3dDevice->QueryInterface(__uuidof(IDXGIDevice), (void **)&pDXGIDevice);
if(FAILED(hr))
{
std::cout << "Failed to query interface IDXGIDevice" << std::endl;
}
IDXGIAdapter * pDXGIAdapter = nullptr;
pDXGIDevice->GetAdapter(&pDXGIAdapter);
DXGI_ADAPTER_DESC adapterDesc;
pDXGIAdapter->GetDesc(&adapterDesc);
pDXGIDevice->Release();
return adapterDesc.DedicatedVideoMemory;
}
OK,我不知道這種方法。然而,據我所知,這會給我完全可用的記憶,而不是估計目前有多少免費,對嗎? – Christoph 2013-01-03 16:38:39
對。它決定了完全可用的內存,而不是當前可用的內存。 – Vertexwahn 2013-01-04 11:56:25
你知道後者是否可能? – Christoph 2013-01-09 13:05:54