From d48d40fc41fc6c817b6ff0f7b558b4c8f646be5c Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Fri, 3 Apr 2026 12:43:15 +0200 Subject: [PATCH] Fix black fog bug on transparency when Volumetric Fog is disabled --- Source/Engine/Renderer/RenderList.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Source/Engine/Renderer/RenderList.cpp b/Source/Engine/Renderer/RenderList.cpp index 95e4ce0dc..6687bdc97 100644 --- a/Source/Engine/Renderer/RenderList.cpp +++ b/Source/Engine/Renderer/RenderList.cpp @@ -198,11 +198,9 @@ RenderFogData::RenderFogData() { Renderer = nullptr; VolumetricFogTexture = nullptr; + Platform::MemoryClear(&ExponentialHeightFogData, sizeof(ExponentialHeightFogData)); ExponentialHeightFogData.FogMinOpacity = 1.0f; - ExponentialHeightFogData.FogDensity = 0.0f; ExponentialHeightFogData.FogCutoffDistance = 0.1f; - ExponentialHeightFogData.StartDistance = 0.0f; - ExponentialHeightFogData.ApplyDirectionalInscattering = 0.0f; ExponentialHeightFogData.VolumetricFogMaxDistance = -1.0f; VolumetricFogData.GridSliceParameters = Float4::One; VolumetricFogData.ScreenSize = VolumetricFogData.VolumeTexelSize = Float2::Zero; @@ -213,6 +211,10 @@ void RenderFogData::Init(const RenderView& view, IFogRenderer* renderer) Renderer = renderer; renderer->GetExponentialHeightFogData(view, ExponentialHeightFogData); renderer->GetVolumetricFogOptions(VolumetricFog); + if (!VolumetricFog.UseVolumetricFog()) + { + ExponentialHeightFogData.VolumetricFogMaxDistance = -1; + } } void* RendererAllocation::Allocate(uintptr size)