【发布时间】:2014-10-11 17:11:26
【问题描述】:
The MSDN page on DXGI 提供有关如何处理不同于桌面分辨率的全屏分辨率的说明。它说在调用IDXGISwapChain::SetFullscreenState() 之前调用IDXGISwapChain::ResizeTargets() 以防止闪烁等。
它没有说明如何处理 Alt-Enter,它会在程序有机会自己调用 IDXGISwapChain::ResizeTargets() 之前调用 IDXGISwapChain::SetFullscreenState()。如果在WM_SIZE 消息上调用后一种方法,则会发送另一个WM_SIZE 消息,可能导致无限循环。如何确保在按下 alt-enter 或 alt-tab 时,后者会在前者之前被调用,并且模式切换通常会轻松进行?
【问题讨论】:
标签: c++ windows directx direct3d dxgi