我有一个dxgiswapchain和d3d11设备,我想从这两个设备中的任何一个获取HWND。
void OnPresent(IDXGISwapChain *swapChain) {
ID3D11Device *device = NULL;
swapChain->GetDevice(__uuidof(ID3D11Device), (void**)&device);
}
我该怎么做?我只记得d3d9是可能的,所以我不确定dxgi/d3d11是否也可能。
调用IDXGISwapChain::GetDesc
会给您交换链描述,它包含输出窗口的HWND
:
DXGI_SWAP_CHAIN_DESC swapChainDesc;
swapChain->GetDesc(&swapChainDesc);
swapChainDesc.OutputWindow; // the hwnd