(Water Plugin) Ripple simulation on three WaterBodyCustom pools at different elevations

I’m currently trying to set up the Water plugin in UE5.1 and (amongst other issues) noticed that BP_FluidSim_01 can’t seem to simulate ripples for water at different elevations.

Note: ‘Follow Player’ is ticked on BP_FluidSim_01.


As per the screenshot above, I have three pools at different elevations with BP_FluidSim_01 on the surface of the pool on the right. The problems are as follows:

  1. Ripples are simulated for the pool on the right, but if I walk over to the other pools on the left no ripple simulation occurs.

  2. Ripple simulation only occurs for the shallow edges of the pool on the right. If I walk into the deeper parts of that pool no ripples occur.

As far as I can tell, BP_FluidSim_01 only tracks the player on a 2D axis. If I walk up or down a hill it doesn’t adjust for the change in altitude.

Solver on BP_FluidSim_01 is set to Ripple Solver.

If anyone has any ideas on how to fix this I’d greatly appreciate it.

Okay so for anyone else stuck with this, here’s a workaround I came up with to update the water level on an interval:


It’s not exactly a good workaround, but the only way to update the water level as far as I can tell is to remove the dynamic force from the player and re-register with a new water level. Just connect the Timer to the BeginPlay event. This updates on a 3 second interval which may not be fast enough for you, so set this to whatever you like.

Another alternative and one I’m currently using in my own project is to just set up trigger volume around each water body. On Event ActorBeginOverlap run RegisterDynamicForce with a predefined water level, then on Event ActorEndOverlap run RemoveDynamicForce. I have a float called WaterLevel which I feed into RegisterDynamicForce, that float is flagged as ‘Instance Editable’ so I can set the water level manually on each trigger volume.

Ideally I’d like to be able to increase the simulation depth but I have no idea how to do that yet.