diff --git a/OptiScaler/hooks/DxgiFactory_Hooks.cpp b/OptiScaler/hooks/DxgiFactory_Hooks.cpp index 9b28e80d..2c2f752c 100644 --- a/OptiScaler/hooks/DxgiFactory_Hooks.cpp +++ b/OptiScaler/hooks/DxgiFactory_Hooks.cpp @@ -7,6 +7,12 @@ #include +// #define DETAILED_SC_LOGS + +#ifdef DETAILED_SC_LOGS +#include +#endif + void DxgiFactoryHooks::CheckAdapter(IUnknown* unkAdapter) { if (State::Instance().isRunningOnDXVK) @@ -213,6 +219,24 @@ HRESULT DxgiFactoryHooks::CreateSwapChain(IDXGIFactory* realFactory, IUnknown* p State::Instance().SCLastFlags = pDesc->Flags; State::Instance().realExclusiveFullscreen = !pDesc->Windowed; +#ifdef DETAILED_SC_LOGS + LOG_TRACE("pDesc->BufferCount: {}", pDesc->BufferCount); + LOG_TRACE("pDesc->BufferDesc.Format: {}", magic_enum::enum_name(pDesc->BufferDesc.Format)); + LOG_TRACE("pDesc->BufferDesc.Height: {}", pDesc->BufferDesc.Height); + LOG_TRACE("pDesc->BufferDesc.RefreshRate.Denominator: {}", pDesc->BufferDesc.RefreshRate.Denominator); + LOG_TRACE("pDesc->BufferDesc.RefreshRate.Numerator: {}", pDesc->BufferDesc.RefreshRate.Numerator); + LOG_TRACE("pDesc->BufferDesc.Scaling: {}", magic_enum::enum_name(pDesc->BufferDesc.Scaling)); + LOG_TRACE("pDesc->BufferDesc.ScanlineOrdering: {}", magic_enum::enum_name(pDesc->BufferDesc.ScanlineOrdering)); + LOG_TRACE("pDesc->BufferDesc.Width: {}", pDesc->BufferDesc.Width); + LOG_TRACE("pDesc->BufferUsage: {}", pDesc->BufferUsage); + LOG_TRACE("pDesc->Flags: {}", pDesc->Flags); + LOG_TRACE("pDesc->OutputWindow: {}", (UINT64) pDesc->OutputWindow); + LOG_TRACE("pDesc->SampleDesc.Count: {}", pDesc->SampleDesc.Count); + LOG_TRACE("pDesc->SampleDesc.Quality: {}", pDesc->SampleDesc.Quality); + LOG_TRACE("pDesc->SwapEffect: {}", magic_enum::enum_name(pDesc->SwapEffect)); + LOG_TRACE("pDesc->Windowed: {}", pDesc->Windowed); +#endif // + // Check for SL proxy, get real queue ID3D12CommandQueue* cq = nullptr; IUnknown* real = nullptr; @@ -417,6 +441,28 @@ HRESULT DxgiFactoryHooks::CreateSwapChainForHwnd(IDXGIFactory2* realFactory, IUn IUnknown* real = nullptr; HRESULT FGSCResult = E_NOTIMPL; +#ifdef VER_PRE_RELEASE + LOG_TRACE("pDesc->AlphaMode : {}", magic_enum::enum_name(pDesc->AlphaMode)); + LOG_TRACE("pDesc->BufferCount : {}", pDesc->BufferCount); + LOG_TRACE("pDesc->BufferUsage : {}", pDesc->BufferUsage); + LOG_TRACE("pDesc->Flags : {}", pDesc->Flags); + LOG_TRACE("pDesc->Format : {}", magic_enum::enum_name(pDesc->Format)); + LOG_TRACE("pDesc->Height : {}", pDesc->Height); + LOG_TRACE("pDesc->SampleDesc.Count : {}", pDesc->SampleDesc.Count); + LOG_TRACE("pDesc->SampleDesc.Quality : {}", pDesc->SampleDesc.Quality); + LOG_TRACE("pDesc->Scaling : {}", magic_enum::enum_name(pDesc->Scaling)); + LOG_TRACE("pDesc->Stereo : {}", pDesc->Stereo); + + if (pFullscreenDesc != nullptr) + { + LOG_TRACE("pFullscreenDesc->RefreshRate.Denominator : {}", pFullscreenDesc->RefreshRate.Denominator); + LOG_TRACE("pFullscreenDesc->RefreshRate.Numerator : {}", pFullscreenDesc->RefreshRate.Numerator); + LOG_TRACE("pFullscreenDesc->Scaling : {}", magic_enum::enum_name(pFullscreenDesc->Scaling)); + LOG_TRACE("pFullscreenDesc->ScanlineOrdering : {}", magic_enum::enum_name(pFullscreenDesc->ScanlineOrdering)); + LOG_TRACE("pFullscreenDesc->Windowed : {}", pFullscreenDesc->Windowed); + } +#endif + if (pDevice->QueryInterface(IID_PPV_ARGS(&cq)) == S_OK) { cq->Release(); diff --git a/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp b/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp index ba517684..da2b18f7 100644 --- a/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp +++ b/OptiScaler/hooks/DxgiFactory_WrappedCalls.cpp @@ -7,6 +7,12 @@ #include #include +// #define DETAILED_SC_LOGS + +#ifdef DETAILED_SC_LOGS +#include +#endif + void DxgiFactoryWrappedCalls::CheckAdapter(IUnknown* unkAdapter) { if (State::Instance().isRunningOnDXVK) @@ -115,6 +121,24 @@ HRESULT DxgiFactoryWrappedCalls::CreateSwapChain(IDXGIFactory* realFactory, Wrap State::Instance().SCLastFlags = pDesc->Flags; State::Instance().realExclusiveFullscreen = !pDesc->Windowed; +#ifdef DETAILED_SC_LOGS + LOG_TRACE("pDesc->BufferCount: {}", pDesc->BufferCount); + LOG_TRACE("pDesc->BufferDesc.Format: {}", magic_enum::enum_name(pDesc->BufferDesc.Format)); + LOG_TRACE("pDesc->BufferDesc.Height: {}", pDesc->BufferDesc.Height); + LOG_TRACE("pDesc->BufferDesc.RefreshRate.Denominator: {}", pDesc->BufferDesc.RefreshRate.Denominator); + LOG_TRACE("pDesc->BufferDesc.RefreshRate.Numerator: {}", pDesc->BufferDesc.RefreshRate.Numerator); + LOG_TRACE("pDesc->BufferDesc.Scaling: {}", magic_enum::enum_name(pDesc->BufferDesc.Scaling)); + LOG_TRACE("pDesc->BufferDesc.ScanlineOrdering: {}", magic_enum::enum_name(pDesc->BufferDesc.ScanlineOrdering)); + LOG_TRACE("pDesc->BufferDesc.Width: {}", pDesc->BufferDesc.Width); + LOG_TRACE("pDesc->BufferUsage: {}", pDesc->BufferUsage); + LOG_TRACE("pDesc->Flags: {}", pDesc->Flags); + LOG_TRACE("pDesc->OutputWindow: {}", (UINT64) pDesc->OutputWindow); + LOG_TRACE("pDesc->SampleDesc.Count: {}", pDesc->SampleDesc.Count); + LOG_TRACE("pDesc->SampleDesc.Quality: {}", pDesc->SampleDesc.Quality); + LOG_TRACE("pDesc->SwapEffect: {}", magic_enum::enum_name(pDesc->SwapEffect)); + LOG_TRACE("pDesc->Windowed: {}", pDesc->Windowed); +#endif // + // Check for SL proxy, get real queue ID3D12CommandQueue* real = nullptr; if (!Util::CheckForRealObject(__FUNCTION__, pDevice, (IUnknown**) &real)) @@ -303,6 +327,28 @@ HRESULT DxgiFactoryWrappedCalls::CreateSwapChainForHwnd(IDXGIFactory2* realFacto State::Instance().SCLastFlags = pDesc->Flags; State::Instance().realExclusiveFullscreen = pFullscreenDesc != nullptr && !pFullscreenDesc->Windowed; +#ifdef VER_PRE_RELEASE + LOG_TRACE("pDesc->AlphaMode : {}", magic_enum::enum_name(pDesc->AlphaMode)); + LOG_TRACE("pDesc->BufferCount : {}", pDesc->BufferCount); + LOG_TRACE("pDesc->BufferUsage : {}", pDesc->BufferUsage); + LOG_TRACE("pDesc->Flags : {}", pDesc->Flags); + LOG_TRACE("pDesc->Format : {}", magic_enum::enum_name(pDesc->Format)); + LOG_TRACE("pDesc->Height : {}", pDesc->Height); + LOG_TRACE("pDesc->SampleDesc.Count : {}", pDesc->SampleDesc.Count); + LOG_TRACE("pDesc->SampleDesc.Quality : {}", pDesc->SampleDesc.Quality); + LOG_TRACE("pDesc->Scaling : {}", magic_enum::enum_name(pDesc->Scaling)); + LOG_TRACE("pDesc->Stereo : {}", pDesc->Stereo); + + if (pFullscreenDesc != nullptr) + { + LOG_TRACE("pFullscreenDesc->RefreshRate.Denominator : {}", pFullscreenDesc->RefreshRate.Denominator); + LOG_TRACE("pFullscreenDesc->RefreshRate.Numerator : {}", pFullscreenDesc->RefreshRate.Numerator); + LOG_TRACE("pFullscreenDesc->Scaling : {}", magic_enum::enum_name(pFullscreenDesc->Scaling)); + LOG_TRACE("pFullscreenDesc->ScanlineOrdering : {}", magic_enum::enum_name(pFullscreenDesc->ScanlineOrdering)); + LOG_TRACE("pFullscreenDesc->Windowed : {}", pFullscreenDesc->Windowed); + } +#endif + // Check for SL proxy, get real queue ID3D12CommandQueue* real = nullptr; if (!Util::CheckForRealObject(__FUNCTION__, pDevice, (IUnknown**) &real))