diff --git a/OptiScaler/hooks/DxgiFactory_Hooks.cpp b/OptiScaler/hooks/DxgiFactory_Hooks.cpp index 4f23034f..bf9d444f 100644 --- a/OptiScaler/hooks/DxgiFactory_Hooks.cpp +++ b/OptiScaler/hooks/DxgiFactory_Hooks.cpp @@ -213,6 +213,7 @@ HRESULT DxgiFactoryHooks::CreateSwapChain(IDXGIFactory* realFactory, IUnknown* p pDesc->Windowed = true; } + pDesc->Flags &= ~DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH; pDesc->BufferDesc.Scaling = DXGI_MODE_SCALING_STRETCHED; } @@ -434,6 +435,7 @@ HRESULT DxgiFactoryHooks::CreateSwapChainForHwnd(IDXGIFactory2* realFactory, IUn pFullscreenDesc->Windowed = true; } + pDesc->Flags &= ~DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH; pDesc->Scaling = DXGI_SCALING_STRETCH; } diff --git a/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp b/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp index da2b18f7..292f3402 100644 --- a/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp +++ b/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp @@ -98,6 +98,7 @@ HRESULT DxgiFactoryWrappedCalls::CreateSwapChain(IDXGIFactory* realFactory, Wrap pDesc->Windowed = true; } + pDesc->Flags &= ~DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH; pDesc->BufferDesc.Scaling = DXGI_MODE_SCALING_STRETCHED; } @@ -304,6 +305,7 @@ HRESULT DxgiFactoryWrappedCalls::CreateSwapChainForHwnd(IDXGIFactory2* realFacto pFullscreenDesc->Windowed = true; } + pDesc->Flags &= ~DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH; pDesc->Scaling = DXGI_SCALING_STRETCH; } @@ -327,7 +329,7 @@ HRESULT DxgiFactoryWrappedCalls::CreateSwapChainForHwnd(IDXGIFactory2* realFacto State::Instance().SCLastFlags = pDesc->Flags; State::Instance().realExclusiveFullscreen = pFullscreenDesc != nullptr && !pFullscreenDesc->Windowed; -#ifdef VER_PRE_RELEASE +#ifdef DETAILED_SC_LOGS LOG_TRACE("pDesc->AlphaMode : {}", magic_enum::enum_name(pDesc->AlphaMode)); LOG_TRACE("pDesc->BufferCount : {}", pDesc->BufferCount); LOG_TRACE("pDesc->BufferUsage : {}", pDesc->BufferUsage);