summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorMarkus Wick <degasus@users.noreply.github.com>2017-12-02 17:38:21 +0100
committerGitHub <noreply@github.com>2017-12-02 17:38:21 +0100
commit76fbdbb06e27e3cf408cfac38a5933eafd43d189 (patch)
tree3d31f18e8ec3e82dd3603dd5e8fef3b1f5e92962 /Source
parent7498d80a6fe8aced9449e537c3a63203247aba09 (diff)
parent1b32751367faba6cf88a5b6572adeeebf905ad9d (diff)
Merge pull request #5903 from linkmauve/fix-mp2e
Round values in swizzlers
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/VideoCommon/TextureConversionShader.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/TextureConversionShader.cpp b/Source/Core/VideoCommon/TextureConversionShader.cpp
index 3f628997b2..044e3a4868 100644
--- a/Source/Core/VideoCommon/TextureConversionShader.cpp
+++ b/Source/Core/VideoCommon/TextureConversionShader.cpp
@@ -80,13 +80,13 @@ static void WriteSwizzler(char*& p, EFBCopyFormat format, APIType ApiType)
WRITE(p, "float4 RGBA8ToRGBA6(float4 src)\n");
WRITE(p, "{\n");
- WRITE(p, " int4 val = int4(src * 255.0) >> 2;\n");
+ WRITE(p, " int4 val = int4(roundEven(src * 255.0)) >> 2;\n");
WRITE(p, " return float4(val) / 63.0;\n");
WRITE(p, "}\n");
WRITE(p, "float4 RGBA8ToRGB565(float4 src)\n");
WRITE(p, "{\n");
- WRITE(p, " int4 val = int4(src * 255.0);\n");
+ WRITE(p, " int4 val = int4(roundEven(src * 255.0));\n");
WRITE(p, " val = int4(val.r >> 3, val.g >> 2, val.b >> 3, 1);\n");
WRITE(p, " return float4(val) / float4(31.0, 63.0, 31.0, 1.0);\n");
WRITE(p, "}\n");