Current state of UE-56344? (Point light reflection rotation)

Hi

It states in the bug report that it cannot be reproduced, but on the left says that it can be reproduced in 4.19.0 and 4.20.0

I have been able to reproduce this bug myself and searching to see if it already existed was how I found it. With the high number of votes I’m guessing a lot of people are also experiencing this.

Has the status for this been labeled wrong?

UE-56344

Looks like there is a fix for half the problem but the baked light reflections are still the wrong way around.

Ok I manged to find out that this was fixed when Epic added code for Rect lights

https://github.com/EpicGames/UnrealEngine/commit/8522799c64393b2ae1f2a23182670de857b9912e#diff-79f2853f5fc843939a1e9e73ced510ea

The fix to make the reflections of the baked lights with a source length > that 0 have the correct rotations are in SceneVisibility.cpp
PostVisibilityFrameSetup

Replace this

const float ZScale = FMath::Max(LightParameters.LightSourceRadius, LightParameters.LightSourceLength);
					DrawSphere(&LightPDI, Origin, FRotationMatrix::MakeFromZ(LightParameters.NormalizedLightDirection).Rotator(), FVector(LightParameters.LightSourceRadius, LightParameters.LightSourceRadius, ZScale), 36, 24, ColoredMeshInstance, SDPG_World);

with this

					FMatrix LightToWorld = Proxy->GetLightToWorld();
					LightToWorld.RemoveScaling();

					//Grabbed from the update when Epic added RECTLights
					if (LightParameters.LightSourceLength > 0.0f)
					{
						DrawSphere(&LightPDI, Origin + 0.5f * LightParameters.LightSourceLength * LightToWorld.GetUnitAxis(EAxis::Z), FRotator::ZeroRotator, LightParameters.LightSourceRadius * FVector::OneVector, 36, 24, ColoredMeshInstance, SDPG_World);
						DrawSphere(&LightPDI, Origin - 0.5f * LightParameters.LightSourceLength * LightToWorld.GetUnitAxis(EAxis::Z), FRotator::ZeroRotator, LightParameters.LightSourceRadius * FVector::OneVector, 36, 24, ColoredMeshInstance, SDPG_World);
						DrawCylinder(&LightPDI, Origin, LightToWorld.GetUnitAxis(EAxis::X), LightToWorld.GetUnitAxis(EAxis::Y), LightToWorld.GetUnitAxis(EAxis::Z), LightParameters.LightSourceRadius, 0.5f * LightParameters.LightSourceLength, 36, ColoredMeshInstance, SDPG_World);
					}
					else
					{
						DrawSphere(&LightPDI, Origin, FRotator::ZeroRotator, LightParameters.LightSourceRadius * FVector::OneVector, 36, 24, ColoredMeshInstance, SDPG_World);
					}