ShallowWaterRiver simulation does not initialize in Unreal Engine 5.7.4

Summary

Summary

The ShallowWaterRiver simulation does not work in Unreal Engine 5.7.4.

I can successfully place a WaterBodyRiver in the level, and the standard Water system works correctly. The river mesh is rendered, the water material appears normally, and all Water components behave as expected.

However, the ShallowWaterRiver simulation never starts.

When I press the Reset button on the ShallowWaterRiver actor, absolutely nothing happens. No simulation is generated, no ripples appear, no flow is calculated, and the river remains completely static.

I also tested the following:

  • The Niagara systems compile successfully.
  • There are no Blueprint compile errors.
  • No runtime errors appear in the Output Log.
  • The Render Targets are created correctly.
  • The built-in sample level WaterFluidSimtestShallow works perfectly.
  • The problem only occurs when creating my own level using WaterBodyRiver together with ShallowWaterRiver.

It appears that the simulation is never initialized. The WaterBodyRiver renders correctly, but the shallow water simulation itself never begins, even after pressing Reset or starting Play mode.

This looks like a regression or bug specific to Unreal Engine 5.7.4.

What Type of Bug are you experiencing?

Simulation

Steps to Reproduce

  1. Create a new empty project in Unreal Engine 5.7.4.
  2. Enable Water and Niagara Fluids plugins.
  3. Add a WaterZone.
  4. Add a WaterBodyRiver.
  5. Add a ShallowWaterRiver actor.
  6. Link the ShallowWaterRiver to the WaterBodyRiver.
  7. Press Reset in Simulation Section

Expected Result

The shallow water simulation should initialize automatically and simulate water flow inside the river.

Observed Result

No simulation starts.
No water movement is generated.
The InitializeShallowWaterSim event appears never to execute.
No useful runtime logs are produced.

Affects Versions

5.7

Platform(s)

Windows

Additional Notes

The sample level “WaterFluidSimtestShallow” included with the engine works correctly.

The issue only occurs when creating a new map using WaterBodyRiver + ShallowWaterRiver.

Niagara compiles successfully.
Render targets are created.
No Blueprint compile errors are present.

This appears to be a regression in UE 5.7.4.

I’m having the exact same issue, nothing i find online gives a fix. I’m still on the hunt as i need this to work big time. If anyone knows a fix, we’re all ears.

Same issue here on UE 5.7.4
I just migrated my project to 5.8.2 with the hope that the problem was fixed… well no, the problem is still there in the newest UE version. Does anyone have a solution to it?

I am so glad that I am not the only one facing this issue! I spent all day looking for a fix yesterday and found nothing. I am probably going to swap to a different method of making water (looking at trying Niagara), however has anyone else found a solution? I am facing the exact same issues with this method.

The problem was in Niagara’s scene-depth sampling shader. Incorrect ground heights saturated at 65504, leaving water depth and velocity at zero.

In:

Engine/Plugins/FX/Niagara/Shaders/Private/NiagaraDataInterfaceSceneCapture2DTemplate.ush

Inside TextureProjectDepth_{ParameterName}, replace:

OutCaptureDepth = OutInBounds
    ? {ParameterName}_Texture.SampleLevel(
        {ParameterName}_TextureSampler, UVW.xy, MipLevel).r
    : DefaultDepth;

With:

[branch]
if (OutInBounds)
{
    OutCaptureDepth = {ParameterName}_Texture.SampleLevel(
        {ParameterName}_TextureSampler, UVW.xy, MipLevel).r;
}
else
{
    OutCaptureDepth = DefaultDepth;
}

Restart the editor, open Grid2D_SW_River, and choose Compile → Full Rebuild. Then test Reset with the viewport in realtime.

Keeping the sample inside an explicit branch restored valid ground heights and changing water depth/velocity. Reverting to the original shader reproduced the failure.

Verified on UE 5.8.2, RTX 5090, driver 610.88.

1 Like

Thanks, That Worked well also for me.

Verified on UE 5.8.2, UE 5.7.4, UE 5.6.1, RTX 5090, studio driver 616.92

Thanks - we’ve verified this is the issue internally too. It is a 5000 series driver problem. I’ll make sure it is fixed for 5.8.4

The fix has been submitted and will be in 5.8.4.

1 Like

UE-397316’s status has changed to ‘Ready for QA’. A member of the QA department is investigating the issue.