aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2021-07-09 00:09:07 -0300
committerGitHub <noreply@github.com>2021-07-09 00:09:07 -0300
commit59900d7f00b14681acfc7ef5e8d1e18d53664e1c (patch)
tree7823b6bb6615ab21d194ba74de4f25181640a537 /Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl
parentb02719cf4173c0ca26e6d562424eba68965ce59c (diff)
Unscale textureSize when resolution scaling is used (#2441)
* Unscale textureSize when resolution scaling is used * Fix textureSize on compute * Flag texture size as needing res scale values too
Diffstat (limited to 'Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl')
-rw-r--r--Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl10
1 files changed, 10 insertions, 0 deletions
diff --git a/Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl b/Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl
index 2e166a4b..c13e2368 100644
--- a/Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl
+++ b/Ryujinx.Graphics.Shader/CodeGen/Glsl/HelperFunctions/TexelFetchScale_fp.glsl
@@ -13,4 +13,14 @@
{
return ivec2(vec2(inputVec) * scale);
}
+}
+
+int Helper_TextureSizeUnscale(int size, int samplerIndex)
+{
+ float scale = abs(fp_renderScale[1 + samplerIndex]);
+ if (scale == 1.0)
+ {
+ return size;
+ }
+ return int(float(size) / scale);
} \ No newline at end of file