aboutsummaryrefslogtreecommitdiff
path: root/client/shaders/object_shader
diff options
context:
space:
mode:
authorHybridDog <3192173+HybridDog@users.noreply.github.com>2020-12-04 20:16:12 +0100
committerGitHub <noreply@github.com>2020-12-04 20:16:12 +0100
commite73c5d45858b35dde782b23677495c6eda3f8253 (patch)
treee432acd4562cc1c026188e69d3b688fce6fdb9a7 /client/shaders/object_shader
parentecd4f45318e7e510ebe4ebe8420ea739122d2edf (diff)
downloadminetest-e73c5d45858b35dde782b23677495c6eda3f8253.tar.gz
minetest-e73c5d45858b35dde782b23677495c6eda3f8253.tar.bz2
minetest-e73c5d45858b35dde782b23677495c6eda3f8253.zip
Fix MSAA stripes (#9247)
This only works when shaders are enabled. The centroid varying avoids that the textures (which repeat themselves out of bounds) are sampled out of bounds in MSAA. If MSAA (called FSAA in minetest) is disabled, the centroid keyword does nothing.
Diffstat (limited to 'client/shaders/object_shader')
-rw-r--r--client/shaders/object_shader/opengl_fragment.glsl4
-rw-r--r--client/shaders/object_shader/opengl_vertex.glsl2
2 files changed, 3 insertions, 3 deletions
diff --git a/client/shaders/object_shader/opengl_fragment.glsl b/client/shaders/object_shader/opengl_fragment.glsl
index 7ac182a63..bf18c1499 100644
--- a/client/shaders/object_shader/opengl_fragment.glsl
+++ b/client/shaders/object_shader/opengl_fragment.glsl
@@ -9,7 +9,7 @@ varying vec3 vNormal;
varying vec3 vPosition;
varying vec3 worldPosition;
varying lowp vec4 varColor;
-varying mediump vec2 varTexCoord;
+centroid varying mediump vec2 varTexCoord;
varying vec3 eyeVec;
varying float vIDiff;
@@ -43,7 +43,7 @@ vec4 applyToneMapping(vec4 color)
const float gamma = 1.6;
const float exposureBias = 5.5;
color.rgb = uncharted2Tonemap(exposureBias * color.rgb);
- // Precalculated white_scale from
+ // Precalculated white_scale from
//vec3 whiteScale = 1.0 / uncharted2Tonemap(vec3(W));
vec3 whiteScale = vec3(1.036015346);
color.rgb *= whiteScale;
diff --git a/client/shaders/object_shader/opengl_vertex.glsl b/client/shaders/object_shader/opengl_vertex.glsl
index e44984dc8..f31b842ee 100644
--- a/client/shaders/object_shader/opengl_vertex.glsl
+++ b/client/shaders/object_shader/opengl_vertex.glsl
@@ -7,7 +7,7 @@ varying vec3 vNormal;
varying vec3 vPosition;
varying vec3 worldPosition;
varying lowp vec4 varColor;
-varying mediump vec2 varTexCoord;
+centroid varying mediump vec2 varTexCoord;
varying vec3 eyeVec;
varying float vIDiff;