Переключить цепочку обмена в оконный режим

Мне нужно освободить цепочку подкачки, но похоже, что ее нужно вернуть в оконный режим.

ОШИБКА DXGI: IDXGISwapChain::Release: Swapchain выпущен в полноэкранном режиме. Сначала переключите его в оконное состояние. [ ПРОЧИЕ ОШИБКИ # 66: ]

Кто-нибудь знает самый простой способ сделать это?


person gmmo    schedule 25.11.2014    source источник


Ответы (1)


Чтобы освободить цепочку обмена, вы должны сделать две вещи. Во-первых, освободите представление цели рендеринга и представление глубины/трафарета (если оно есть), которые присоединены к цепочке обмена. Во-вторых, переведите цепочку подкачки в оконный режим:

// Releases the swap chain and all resources that are attached to it.    
void ReleaseSwapChain()
{
    ReleaseDefaultRTVAndDSV();

    if ( pSwapChain )
    {
        pSwapChain->SetFullscreenState( false, nullptr );
        pSwapChain->Release();
        pSwapChain = nullptr;
    }
}
person rashmatash    schedule 25.11.2014