D3D11 Fullscreen Transition Bug

Started by
-1 comments, last by Batzer 10 years, 4 months ago

Hey guys,

so I've been spending the last 4 days trying to figure out why I keep getting that annoying Warning from DXGI.

"DXGI WARNING: IDXGISwapChain::Present: Fullscreen presentation inefficiencies incurred due to application not using IDXGISwapChain::ResizeBuffers appropriately, specifying a DXGI_MODE_DESC not available in IDXGIOutput::GetDisplayModeList, or not using DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH.DXGI_SWAP_CHAIN_DESC::BufferDesc = { 1600, 900, { 0, 0 }, R8G8B8A8_UNORM, 0, 0 }; DXGI_SWAP_CHAIN_DESC::SampleDesc = { 1, 0 }; DXGI_SWAP_CHAIN_DESC::Flags = 0x2; [ MISCELLANEOUS WARNING #98: ]"

My code should be perfectly fine, as it follows these guidlines from Microsoft: http://msdn.microsoft.com/en-us/library/windows/desktop/ee417025%28v=vs.85%29.aspx#Full_Screen_Issues

However I still get that warning, but only when I switch to fullscreen the first time, with Alt-Enter for example. When I repeat switching to fullscreen and back with Alt-Enter the warning stops appearing. It turns out that DXGI doesn't dispatch the WM_SIZE message on the first transition to fullscreen, eventhough it should.

Is this a bug in DXGI?

Edit: Here is a quick and dirty test-application that reproduces the issue: http://pastebin.com/J7VEufym (Visual Studio 2013, C++11)

Edit2: Ok I've figured it out, the actual window size is used not the client size of the window. This results in having a 834x630 (or something like that) resolution, which isn't a valid one for obvious reasons :D

This topic is closed to new replies.

Advertisement