summaryrefslogtreecommitdiffstats
path: root/src/common
diff options
context:
space:
mode:
authorameerj <52414509+ameerj@users.noreply.github.com>2021-10-12 06:35:01 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2021-11-16 22:11:31 +0100
commitabd07e41582b6d8f7efdedb936cdd7a7fddf9912 (patch)
tree4b1b3c2a676abc935517b669566068270029b6d3 /src/common
parenttexture_cache: Fix image resolves when src/dst are not both scaled (diff)
downloadyuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.tar
yuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.tar.gz
yuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.tar.bz2
yuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.tar.lz
yuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.tar.xz
yuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.tar.zst
yuzu-abd07e41582b6d8f7efdedb936cdd7a7fddf9912.zip
Diffstat (limited to 'src/common')
-rw-r--r--src/common/settings.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/common/settings.h b/src/common/settings.h
index f629c7c56..09f7cdd84 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -72,6 +72,20 @@ struct ResolutionScalingInfo {
f32 up_factor{1.0f};
f32 down_factor{1.0f};
bool active{};
+
+ s32 ScaleUp(s32 value) const {
+ if (value == 0) {
+ return 0;
+ }
+ return std::max((value * static_cast<s32>(up_scale)) >> static_cast<s32>(down_shift), 1);
+ }
+
+ u32 ScaleUp(u32 value) const {
+ if (value == 0U) {
+ return 0U;
+ }
+ return std::max((value * up_scale) >> down_shift, 1U);
+ }
};
/** The BasicSetting class is a simple resource manager. It defines a label and default value