diff --git a/bin/resources/shaders/dx11/tfx.fx b/bin/resources/shaders/dx11/tfx.fx index 2d1a90fe1b..41fb20b118 100644 --- a/bin/resources/shaders/dx11/tfx.fx +++ b/bin/resources/shaders/dx11/tfx.fx @@ -740,7 +740,7 @@ float4 fog(float4 c, float f) { if(PS_FOG) { - c.rgb = trunc(lerp(FogColor, c.rgb, f)); + c.rgb = trunc(lerp(FogColor, c.rgb, (f * 255.0f) / 256.0f)); } return c; diff --git a/bin/resources/shaders/opengl/tfx_fs.glsl b/bin/resources/shaders/opengl/tfx_fs.glsl index 65c82cb136..fc642a9676 100644 --- a/bin/resources/shaders/opengl/tfx_fs.glsl +++ b/bin/resources/shaders/opengl/tfx_fs.glsl @@ -646,7 +646,7 @@ bool atst(vec4 C) void fog(inout vec4 C, float f) { #if PS_FOG != 0 - C.rgb = trunc(mix(FogColor, C.rgb, f)); + C.rgb = trunc(mix(FogColor, C.rgb, (f * 255.0f) / 256.0f)); #endif } diff --git a/bin/resources/shaders/vulkan/tfx.glsl b/bin/resources/shaders/vulkan/tfx.glsl index de9b354b39..8e7bd53f4d 100644 --- a/bin/resources/shaders/vulkan/tfx.glsl +++ b/bin/resources/shaders/vulkan/tfx.glsl @@ -907,7 +907,7 @@ bool atst(vec4 C) vec4 fog(vec4 c, float f) { #if PS_FOG - c.rgb = trunc(mix(FogColor, c.rgb, f)); + c.rgb = trunc(mix(FogColor, c.rgb, (f * 255.0f) / 256.0f)); #endif return c; diff --git a/pcsx2/GS/Renderers/Metal/tfx.metal b/pcsx2/GS/Renderers/Metal/tfx.metal index 09fc6f84fc..942a45e16c 100644 --- a/pcsx2/GS/Renderers/Metal/tfx.metal +++ b/pcsx2/GS/Renderers/Metal/tfx.metal @@ -790,7 +790,7 @@ struct PSMain void fog(thread float4& C, float f) { if (PS_FOG) - C.rgb = trunc(mix(cb.fog_color, C.rgb, f)); + C.rgb = trunc(mix(cb.fog_color, C.rgb, (f * 255.0f) / 256.0f)); } float4 ps_color() diff --git a/pcsx2/ShaderCacheVersion.h b/pcsx2/ShaderCacheVersion.h index 1298ae3bbe..7851b71120 100644 --- a/pcsx2/ShaderCacheVersion.h +++ b/pcsx2/ShaderCacheVersion.h @@ -3,4 +3,4 @@ /// Version number for GS and other shaders. Increment whenever any of the contents of the /// shaders change, to invalidate the cache. -static constexpr u32 SHADER_CACHE_VERSION = 78; +static constexpr u32 SHADER_CACHE_VERSION = 79;