summaryrefslogtreecommitdiffstats
path: root/src/core/frontend
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-11-17 03:52:11 +0100
committerGitHub <noreply@github.com>2021-11-17 03:52:11 +0100
commit71313509f75aeafe425e531824d1faa9e7c0a40b (patch)
treecb1df371d288677fcede6a3409eb079e0d278163 /src/core/frontend
parentMerge pull request #7347 from lioncash/catch (diff)
parentTextureCache: Fix Automatic Anisotropic. (diff)
downloadyuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.tar
yuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.tar.gz
yuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.tar.bz2
yuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.tar.lz
yuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.tar.xz
yuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.tar.zst
yuzu-71313509f75aeafe425e531824d1faa9e7c0a40b.zip
Diffstat (limited to '')
-rw-r--r--src/core/frontend/framebuffer_layout.cpp15
-rw-r--r--src/core/frontend/framebuffer_layout.h2
2 files changed, 7 insertions, 10 deletions
diff --git a/src/core/frontend/framebuffer_layout.cpp b/src/core/frontend/framebuffer_layout.cpp
index 0832463d6..4b58b672a 100644
--- a/src/core/frontend/framebuffer_layout.cpp
+++ b/src/core/frontend/framebuffer_layout.cpp
@@ -44,16 +44,13 @@ FramebufferLayout DefaultFrameLayout(u32 width, u32 height) {
return res;
}
-FramebufferLayout FrameLayoutFromResolutionScale(u32 res_scale) {
- u32 width, height;
+FramebufferLayout FrameLayoutFromResolutionScale(f32 res_scale) {
+ const bool is_docked = Settings::values.use_docked_mode.GetValue();
+ const u32 screen_width = is_docked ? ScreenDocked::Width : ScreenUndocked::Width;
+ const u32 screen_height = is_docked ? ScreenDocked::Height : ScreenUndocked::Height;
- if (Settings::values.use_docked_mode.GetValue()) {
- width = ScreenDocked::Width * res_scale;
- height = ScreenDocked::Height * res_scale;
- } else {
- width = ScreenUndocked::Width * res_scale;
- height = ScreenUndocked::Height * res_scale;
- }
+ const u32 width = static_cast<u32>(static_cast<f32>(screen_width) * res_scale);
+ const u32 height = static_cast<u32>(static_cast<f32>(screen_height) * res_scale);
return DefaultFrameLayout(width, height);
}
diff --git a/src/core/frontend/framebuffer_layout.h b/src/core/frontend/framebuffer_layout.h
index e2e3bbbb3..2e36c0163 100644
--- a/src/core/frontend/framebuffer_layout.h
+++ b/src/core/frontend/framebuffer_layout.h
@@ -60,7 +60,7 @@ FramebufferLayout DefaultFrameLayout(u32 width, u32 height);
* Convenience method to get frame layout by resolution scale
* @param res_scale resolution scale factor
*/
-FramebufferLayout FrameLayoutFromResolutionScale(u32 res_scale);
+FramebufferLayout FrameLayoutFromResolutionScale(f32 res_scale);
/**
* Convenience method to determine emulation aspect ratio