diff options
-rwxr-xr-x | doc/contributions.txt | 1 | ||||
-rw-r--r-- | indra/newview/app_settings/shaders/class1/deferred/materialF.glsl | 13 |
2 files changed, 7 insertions, 7 deletions
diff --git a/doc/contributions.txt b/doc/contributions.txt index 9368781c9a..4cabb84b10 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -282,6 +282,7 @@ Beq Janus SL-11300 SL-15709 SL-16021 + SL-18637 Beth Walcher Bezilon Kasei Biancaluce Robbiani diff --git a/indra/newview/app_settings/shaders/class1/deferred/materialF.glsl b/indra/newview/app_settings/shaders/class1/deferred/materialF.glsl index b26194f278..b30d7655db 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/materialF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/materialF.glsl @@ -202,7 +202,7 @@ VARYING vec2 vary_texcoord2; uniform float env_intensity; uniform vec4 specular_color; // specular color RGB and specular exponent (glossiness) in alpha -#ifdef HAS_ALPHA_MASK +#if (DIFFUSE_ALPHA_MODE == DIFFUSE_ALPHA_MODE_MASK) uniform float minimum_alpha; #endif @@ -227,12 +227,11 @@ void main() vec4 diffcol = texture2D(diffuseMap, vary_texcoord0.xy); diffcol.rgb *= vertex_color.rgb; -#ifdef HAS_ALPHA_MASK -#if DIFFUSE_ALPHA_MODE == DIFFUSE_ALPHA_MODE_BLEND - if (diffcol.a*vertex_color.a < minimum_alpha) -#else - if (diffcol.a < minimum_alpha) -#endif +#if (DIFFUSE_ALPHA_MODE == DIFFUSE_ALPHA_MODE_MASK) + + // Comparing floats cast from 8-bit values, produces acne right at the 8-bit transition points + float bias = 0.001953125; // 1/512, or half an 8-bit quantization (SL-18637) + if (diffcol.a < minimum_alpha-bias) { discard; } |