summaryrefslogtreecommitdiff
path: root/src/render
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2023-08-18 22:07:28 +0200
committervaxerski <vaxry@vaxry.net>2023-08-18 22:07:28 +0200
commit3d9545d2e0aee9f6c67867b22cf3fb9b1f708bc6 (patch)
tree6dcc4898aa449ccc7661a1ce06bd2b06f9c5b37a /src/render
parent37a211a2ae94abad0f606433a58603e70261d0bb (diff)
shaders: minor premultiplication fixes
Diffstat (limited to 'src/render')
-rw-r--r--src/render/shaders/Border.hpp7
-rw-r--r--src/render/shaders/Shadow.hpp4
2 files changed, 6 insertions, 5 deletions
diff --git a/src/render/shaders/Border.hpp b/src/render/shaders/Border.hpp
index d881dc5b..4e2d485d 100644
--- a/src/render/shaders/Border.hpp
+++ b/src/render/shaders/Border.hpp
@@ -109,11 +109,14 @@ void main() {
discard;
}
- if (pixColor[3] == 0.0)
+ if (additionalAlpha == 0.0)
discard;
pixColor = getColorForCoord(v_texcoord);
+ pixColor.rgb *= pixColor[3];
- gl_FragColor = pixColor * alpha * additionalAlpha;
+ pixColor *= alpha * additionalAlpha;
+
+ gl_FragColor = pixColor;
}
)#";
diff --git a/src/render/shaders/Shadow.hpp b/src/render/shaders/Shadow.hpp
index 49f548d7..2c7b07b2 100644
--- a/src/render/shaders/Shadow.hpp
+++ b/src/render/shaders/Shadow.hpp
@@ -79,9 +79,7 @@ void main() {
}
// premultiply
- pixColor[0] *= pixColor[3];
- pixColor[1] *= pixColor[3];
- pixColor[2] *= pixColor[3];
+ pixColor.rgb *= pixColor[3];
gl_FragColor = pixColor;
})#";