mirror of
https://github.com/optiscaler/OptiScaler.git
synced 2026-09-28 08:16:13 +00:00
Added optional verbose swapchain logs
This commit is contained in:
@@ -7,6 +7,12 @@
|
||||
|
||||
#include <detours/detours.h>
|
||||
|
||||
// #define DETAILED_SC_LOGS
|
||||
|
||||
#ifdef DETAILED_SC_LOGS
|
||||
#include <magic_enum.hpp>
|
||||
#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();
|
||||
|
||||
@@ -7,6 +7,12 @@
|
||||
#include <spoofing/Dxgi_Spoofing.h>
|
||||
#include <wrapped/wrapped_swapchain.h>
|
||||
|
||||
// #define DETAILED_SC_LOGS
|
||||
|
||||
#ifdef DETAILED_SC_LOGS
|
||||
#include <magic_enum.hpp>
|
||||
#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))
|
||||
|
||||
Reference in New Issue
Block a user