Lumen reflection bug when using masked material

Hello !
I have a problem with lumen reflection.
When I have a simple masked material, it reflect weirdly in specular surface with Lumen.
There is a weird outline on top and bottom on the reflection if the masked element is in front of another reflected mesh.

There is an example image, and the weird second white reflection is the one I am speaking about.
Screenshot 2023-08-25 213914_2

This dose not happens in screen space reflection mode in the second screen.

If I had to guess, lumen isn’t correctly identifying if/when SSR should hand off to dedicated lumen reflections, so you’re getting a duplicate? What are your lumen settings?

Thanks for the answer.
I don’t know much about lumen I’m a dev.

There are the project settings.
I managed to fix reflection by enabling ray tracing and changing the “Ray Lighting Mode” from “Surface Cache” to “Hit Lighting For Reflection”.

But enabling Ray Tracing seams servery overkill to fix a white reflection, but then I suppose the problem lies within the “Surface Cache”.

I think than the graphical settings should be pretty close to the default as I didn’t looked into it much until now. Engine version is self build 5.2.1 and I’m pretty sure the same things would happens in a brand new project.
I’ll test that right now and will repost if there are differences, but I suppose there will not be.

Edit : There are settings as text


[/Script/Engine.RendererSettings]
r.Shadow.Virtual.Enable=1
r.Mobile.EnableNoPrecomputedLightingCSMShader=1
r.GenerateMeshDistanceFields=True
r.DynamicGlobalIlluminationMethod=1
r.ReflectionMethod=1
r.CustomDepth=3
r.Mobile.PlanarReflectionMode=0
r.Shaders.CompressionFormat=2
r.AllowOcclusionQueries=True
r.Material.RoughDiffuse=False
r.Material.EnergyConservation=False
r.ReflectionCaptureResolution=256
r.ReflectionEnvironmentLightmapMixBasedOnRoughness=True
r.AllowGlobalClipPlane=True
r.SkinCache.CompileShaders=True
r.RayTracing=True
r.Lumen.HardwareRayTracing=True
r.Lumen.TranslucencyReflections.FrontLayer.EnableForProject=False
r.Lumen.HardwareRayTracing.LightingMode=2
r.Lumen.TraceMeshSDFs=0
r.RayTracing.Skylight=False
r.DistanceFields.DefaultVoxelDensity=0.200000
r.NormalMapsForStaticLighting=False

[/Script/HardwareTargeting.HardwareTargetingSettings]
TargetedHardwareClass=Desktop
AppliedTargetedHardwareClass=Desktop
DefaultGraphicsPerformance=Maximum
AppliedDefaultGraphicsPerformance=Maximum

[/Script/WindowsTargetPlatform.WindowsTargetSettings]
DefaultGraphicsRHI=DefaultGraphicsRHI_DX12
-D3D12TargetedShaderFormats=PCD3D_SM5
+D3D12TargetedShaderFormats=PCD3D_SM5
+D3D12TargetedShaderFormats=PCD3D_SM6
-D3D11TargetedShaderFormats=PCD3D_SM5
+D3D11TargetedShaderFormats=PCD3D_SM5
Compiler=Default
AudioSampleRate=48000
AudioCallbackBufferFrameSize=1024
AudioNumBuffersToEnqueue=1
AudioMaxChannels=0
AudioNumSourceWorkers=4
SpatializationPlugin=
SourceDataOverridePlugin=
ReverbPlugin=
OcclusionPlugin=
CompressionOverrides=(bOverrideCompressionTimes=False,DurationThreshold=5.000000,MaxNumRandomBranches=0,SoundCueQualityIndex=0)
CacheSizeKB=65536
MaxChunkSizeOverrideKB=0
bResampleForDevice=False
MaxSampleRate=48000.000000
HighSampleRate=32000.000000
MedSampleRate=24000.000000
LowSampleRate=12000.000000
MinSampleRate=8000.000000
CompressionQualityModifier=1.000000
AutoStreamingThreshold=0.000000
SoundCueCookQualityIndex=-1

Also apparently no, on a new project I can see very very subtle distortion bug where I have my strong double reflection on my project but a user would not notice it if not searching for it.
I suppose some of my parameter have been pushed to extreme values on my project and so it broke, suppose I have to test every setting from default to my project’s ones until the bug appear now… I’ll post solution there if I find it.

The given reflection was caused by indirect lighting from the directional light, If the value is not 1 (or something else base on the color of your scene) then this artifact appear as a darker or lighter double shadow ontop of the other object’s reflection. This dose happen on any project, even new one if the “right” combination of direction light rotation, background object color and forefront object are used.

But it seems to not be my original problem after all.

The original thing I was trying to fix with opacity (and Vegetation more specifically) is than a masked element in front of another will prevent the masked element on the background to cast correct reflection onto a reflective surface like water, or specular creating a “hole” in the reflection.
This also dose not append in screen space reflection or in ray-tracing.

I can also avoid the problem using translucent lit surface instead of masked vegetation for the foliage (but foliage look weirder).

What I may need to do is go Ray Tracing for this scene if hardware is available, or screen space reflection otherwise, I suppose I’ll have to study how to do that.

Also hopefully this will be fixed in 5.3 or later as Epic continue to iterate on lumen.

I wonder if simply turning of “Affect Dynamic Indirect Lighting” on the mesh with the masked shader can solve a similar issue? I had a dithered masked shaded static mesh showing up underwater when not needed. Flipped that off and the problem went away for me.