summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/UberShaderPixel.cpp
diff options
context:
space:
mode:
authorTilka <tilkax@gmail.com>2021-07-11 22:59:23 +0100
committerGitHub <noreply@github.com>2021-07-11 22:59:23 +0100
commit20a8e9c872362f39dcb1319a39040cd85dc2d7dc (patch)
tree7232511a6fded798b7af34d44d55d933f86bcf39 /Source/Core/VideoCommon/UberShaderPixel.cpp
parentf9baff46a63176d57fdc3b363d59adc861ac003a (diff)
parenta379456f381f474bfdcb993fd4b28c84de5400d3 (diff)
Merge pull request #9876 from Pokechu22/skyward-sword-map
Fix indirect textures when format is not ITF_8
Diffstat (limited to 'Source/Core/VideoCommon/UberShaderPixel.cpp')
-rw-r--r--Source/Core/VideoCommon/UberShaderPixel.cpp24
1 files changed, 12 insertions, 12 deletions
diff --git a/Source/Core/VideoCommon/UberShaderPixel.cpp b/Source/Core/VideoCommon/UberShaderPixel.cpp
index ffe779a52f..d6aa505f69 100644
--- a/Source/Core/VideoCommon/UberShaderPixel.cpp
+++ b/Source/Core/VideoCommon/UberShaderPixel.cpp
@@ -828,24 +828,24 @@ ShaderCode GenPixelShader(APIType ApiType, const ShaderHostConfig& host_config,
" break;\n"
" case {:s}:\n",
IndTexFormat::ITF_5);
- out.Write(" indcoord.x = (indcoord.x & 0x1f) + ((bias & 1u) != 0u ? 1 : 0);\n"
- " indcoord.y = (indcoord.y & 0x1f) + ((bias & 2u) != 0u ? 1 : 0);\n"
- " indcoord.z = (indcoord.z & 0x1f) + ((bias & 4u) != 0u ? 1 : 0);\n"
- " s.AlphaBump = s.AlphaBump & 0xe0;\n"
+ out.Write(" indcoord.x = (indcoord.x >> 3) + ((bias & 1u) != 0u ? 1 : 0);\n"
+ " indcoord.y = (indcoord.y >> 3) + ((bias & 2u) != 0u ? 1 : 0);\n"
+ " indcoord.z = (indcoord.z >> 3) + ((bias & 4u) != 0u ? 1 : 0);\n"
+ " s.AlphaBump = s.AlphaBump << 5;\n"
" break;\n"
" case {:s}:\n",
IndTexFormat::ITF_4);
- out.Write(" indcoord.x = (indcoord.x & 0x0f) + ((bias & 1u) != 0u ? 1 : 0);\n"
- " indcoord.y = (indcoord.y & 0x0f) + ((bias & 2u) != 0u ? 1 : 0);\n"
- " indcoord.z = (indcoord.z & 0x0f) + ((bias & 4u) != 0u ? 1 : 0);\n"
- " s.AlphaBump = s.AlphaBump & 0xf0;\n"
+ out.Write(" indcoord.x = (indcoord.x >> 4) + ((bias & 1u) != 0u ? 1 : 0);\n"
+ " indcoord.y = (indcoord.y >> 4) + ((bias & 2u) != 0u ? 1 : 0);\n"
+ " indcoord.z = (indcoord.z >> 4) + ((bias & 4u) != 0u ? 1 : 0);\n"
+ " s.AlphaBump = s.AlphaBump << 4;\n"
" break;\n"
" case {:s}:\n",
IndTexFormat::ITF_3);
- out.Write(" indcoord.x = (indcoord.x & 0x07) + ((bias & 1u) != 0u ? 1 : 0);\n"
- " indcoord.y = (indcoord.y & 0x07) + ((bias & 2u) != 0u ? 1 : 0);\n"
- " indcoord.z = (indcoord.z & 0x07) + ((bias & 4u) != 0u ? 1 : 0);\n"
- " s.AlphaBump = s.AlphaBump & 0xf8;\n"
+ out.Write(" indcoord.x = (indcoord.x >> 5) + ((bias & 1u) != 0u ? 1 : 0);\n"
+ " indcoord.y = (indcoord.y >> 5) + ((bias & 2u) != 0u ? 1 : 0);\n"
+ " indcoord.z = (indcoord.z >> 5) + ((bias & 4u) != 0u ? 1 : 0);\n"
+ " s.AlphaBump = s.AlphaBump << 3;\n"
" break;\n"
" }}\n"
"\n"