From 121ef2f244f8eb89b77f982259abbd7c467ef2ee Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Fri, 3 Apr 2026 11:28:22 +0200 Subject: [PATCH] Fix SSR mixing bug regression --- Content/Shaders/SSR.flax | 4 ++-- Source/Engine/Renderer/ReflectionsPass.cpp | 2 ++ Source/Shaders/SSR.shader | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Content/Shaders/SSR.flax b/Content/Shaders/SSR.flax index 894441863..f286e8f45 100644 --- a/Content/Shaders/SSR.flax +++ b/Content/Shaders/SSR.flax @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c69fe15dec62ed41014152bbd80dc40343d5d65c0f5fba67d35e6712d8ed49ff -size 11586 +oid sha256:e607712c48bd2484fb5bce5fa3f5aa2a4a05d0c03e0f24483b7eb1463d954263 +size 11592 diff --git a/Source/Engine/Renderer/ReflectionsPass.cpp b/Source/Engine/Renderer/ReflectionsPass.cpp index 18efc3583..9723b4c30 100644 --- a/Source/Engine/Renderer/ReflectionsPass.cpp +++ b/Source/Engine/Renderer/ReflectionsPass.cpp @@ -310,6 +310,8 @@ void ReflectionsPass::Render(RenderContext& renderContext, GPUTextureView* light context->Clear(*reflectionsBuffer, Color::Black); // Reflection Probes pass + if (!useSSR && renderContext.View.Mode == ViewMode::Reflections) + context->Clear(lightBuffer, Color::Black); if (renderProbes) { PROFILE_GPU_CPU("Env Probes"); diff --git a/Source/Shaders/SSR.shader b/Source/Shaders/SSR.shader index b1e90c924..b4b9d5c34 100644 --- a/Source/Shaders/SSR.shader +++ b/Source/Shaders/SSR.shader @@ -224,14 +224,14 @@ float4 PS_ResolvePass(Quad_VS2PS input) : SV_Target0 // Calculate final result value result /= RESOLVE_SAMPLES; - result.a *= Intensity; + result.a *= Intensity; #if SSR_REDUCE_HIGHLIGHTS result.rgb /= 1 - Luminance(result.rgb); #endif // Normalize alpha result.rgb *= max(1, result.a); - result.a = min(result, 1); + result.a = min(result.a, 1); //return float4(abs(Luminance(result) - Luminance(saturate(result))).xxx, 1); //return saturate(result);