From a272c6d32a5cf29e10ace8980194fc7b949b8da9 Mon Sep 17 00:00:00 2001 From: Hyper <34012267+hyperbx@users.noreply.github.com> Date: Sun, 20 Oct 2024 23:14:20 +0100 Subject: [PATCH] High DPI window fixes --- UnleashedRecomp/config.h | 14 +++++++------- UnleashedRecomp/gpu/video.cpp | 2 +- UnleashedRecomp/res/config.toml | 2 +- UnleashedRecomp/ui/window.cpp | 2 ++ 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/UnleashedRecomp/config.h b/UnleashedRecomp/config.h index 58a3e14..0f66b37 100644 --- a/UnleashedRecomp/config.h +++ b/UnleashedRecomp/config.h @@ -29,6 +29,12 @@ enum EScoreBehaviour : uint32_t EScoreBehaviour_CheckpointRetain }; +enum EGraphicsAPI +{ + EGraphicsAPI_D3D12, + EGraphicsAPI_Vulkan +}; + enum EMovieScaleMode : uint32_t { EMovieScaleMode_Stretch, @@ -43,12 +49,6 @@ enum EUIScaleMode : uint32_t EUIScaleMode_Centre }; -enum EGraphicsAPI -{ - GraphicsAPI_D3D12, - GraphicsAPI_Vulkan -}; - class Config { public: @@ -68,7 +68,7 @@ public: inline static bool WerehogBattleMusic = true; // Video - inline static EGraphicsAPI GraphicsAPI = GraphicsAPI_D3D12; + inline static EGraphicsAPI GraphicsAPI = EGraphicsAPI_D3D12; inline static uint32_t WindowWidth = 1280; inline static uint32_t WindowHeight = 720; inline static float ResolutionScale = 1.0f; diff --git a/UnleashedRecomp/gpu/video.cpp b/UnleashedRecomp/gpu/video.cpp index c3c6ad3..dd98819 100644 --- a/UnleashedRecomp/gpu/video.cpp +++ b/UnleashedRecomp/gpu/video.cpp @@ -545,7 +545,7 @@ static void CreateHostDevice() Window::Init(); - g_vulkan = Config::GraphicsAPI == GraphicsAPI_Vulkan; + g_vulkan = Config::GraphicsAPI == EGraphicsAPI_Vulkan; LoadShaderCache(); diff --git a/UnleashedRecomp/res/config.toml b/UnleashedRecomp/res/config.toml index 6f9df20..53519dc 100644 --- a/UnleashedRecomp/res/config.toml +++ b/UnleashedRecomp/res/config.toml @@ -17,7 +17,7 @@ UnleashCancel = false # Determines whether Unleash can be cancelled b WerehogBattleMusic = true # Determines whether to play the battle theme for enemy encounters as the Werehog. [Video] -GraphicsAPI = 0 # 0 - D3D12; 1 - Vulkan +GraphicsAPI = 0 # 0 - D3D12; 1 - Vulkan. WindowWidth = 1280 WindowHeight = 720 ResolutionScale = 1.0 diff --git a/UnleashedRecomp/ui/window.cpp b/UnleashedRecomp/ui/window.cpp index 3c726cd..7fb0ac9 100644 --- a/UnleashedRecomp/ui/window.cpp +++ b/UnleashedRecomp/ui/window.cpp @@ -87,6 +87,8 @@ void Window::Init() SDL_EventState(SDL_SYSWMEVENT, SDL_ENABLE); SDL_AddEventWatch(Window_OnSDLEvent, s_window); + SetProcessDPIAware(); + s_window = SDL_CreateWindow(title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,