diff --git a/binaries/data/mods/public/shaders/glsl/model_common.fs b/binaries/data/mods/public/shaders/glsl/model_common.fs index 6bc24b83ec..2dc5e8a773 100644 --- a/binaries/data/mods/public/shaders/glsl/model_common.fs +++ b/binaries/data/mods/public/shaders/glsl/model_common.fs @@ -246,7 +246,7 @@ void main() #if !IGNORE_LOS float los = texture2D(losTex, v_los).a; - los = los < 0.01 ? 0.0 : los; + los = los < 0.03 ? 0.0 : los; color *= los; #endif diff --git a/binaries/data/mods/public/shaders/glsl/terrain_common.fs b/binaries/data/mods/public/shaders/glsl/terrain_common.fs index 2728a3e993..375a3c1855 100644 --- a/binaries/data/mods/public/shaders/glsl/terrain_common.fs +++ b/binaries/data/mods/public/shaders/glsl/terrain_common.fs @@ -219,7 +219,7 @@ void main() #endif float los = texture2D(losTex, v_los).a; - los = los < 0.01 ? 0.0 : los; + los = los < 0.03 ? 0.0 : los; color *= los; #if DECAL diff --git a/binaries/data/mods/public/shaders/glsl/water_high.fs b/binaries/data/mods/public/shaders/glsl/water_high.fs index 4594b74edd..1d177337de 100644 --- a/binaries/data/mods/public/shaders/glsl/water_high.fs +++ b/binaries/data/mods/public/shaders/glsl/water_high.fs @@ -53,7 +53,7 @@ void main() specular = pow(max(0.0, ndoth), shininess) * sunColor * specularStrength; losMod = texture2D(losMap, gl_TexCoord[3].st).a; - losMod = losMod < 0.01 ? 0.0 : losMod; + losMod = losMod < 0.03 ? 0.0 : losMod; gl_FragColor.rgb = mix(refrColor + 0.3*specular, reflColor + specular, fresnel) * losMod; diff --git a/source/graphics/LOSTexture.cpp b/source/graphics/LOSTexture.cpp index 8554e91184..348d7af708 100644 --- a/source/graphics/LOSTexture.cpp +++ b/source/graphics/LOSTexture.cpp @@ -138,7 +138,9 @@ void CLOSTexture::InterpolateLOS() m_smoothShader->BeginPass(); CShaderProgramPtr shader = m_smoothShader->GetShader(); - shader->Bind(); + glDisable(GL_BLEND); + + shader->Bind(); shader->BindTexture("losTex1", m_Texture); shader->BindTexture("losTex2", whichTex ? m_TextureSmooth1 : m_TextureSmooth2);