WorldPartition Proxies Stuck Loaded After Adding Water Body

In a world partition level, after adding a water body actor from the UE Water system, exiting, and re-opening the level in the editor, my entire landscape is loaded in, even though it was saved with all regions unloaded and the minimap shows ‘no regions loaded.’ Load/Unload Selected Regions affects everything it’s supposed to BUT the landscape proxies.
While this isn’t a huge issue on smaller maps, my 16x16km level could not be opened (out of video memory crash) despite having no issues until the next time opening the level after adding the single water actor (lake).
Removing the water plugin promptly resolved both issues. (Force-removed the water actors from my levels).
I reproduced this and was able to confirm: issue occurs after adding water actor to level and re-opening the level, landscape proxies and water body lake actor all show spatially loaded, and stream appropriately in PIE. This only appears to affect WP behavior in edit mode, but consequently that means larger/fuller maps may become inaccessible due to everything trying to load at once when opening the level.
I apologize if this was addressed elsewhere- I couldn’t find any previous posts that quite fit my situation.
I’m on UE5.3, 64gb RAM, 3090ti 24gb.

I guess my questions are: anyone else seen this sort of behavior, particularly in implementing UE Water in a WorldPartition map? Is there a setting or trick I’m missing to get the two to play nice?

For anyone else who may come across this:
It seems to be the Landscape_WaterBrush specifically that was messing with the world partition proxies’ Load/Unload behavior. With this removed, they started working again properly and, when the level is opened, are in their correct state.
The WaterBrush is generated every time a WaterBody is placed, along with a new Water Edit Layer in the landscape, as they’re required for the landscape deformation.
My workaround:
Delete all that.
Make a new BP derived from WaterBodyCustom. the WaterBodyType you want.
Open it up. In this, set Affects Landscape to False as the default, which will prevent the brush and layer from being generated when placed in the level.
Select the water type you want it to be (I’ve done river and lake so far), and assign your materials to their appropriate slots. (You may be able to do this by deriving directly from one of the presets. I havent checked that.)
Use these in lieu of the default actors.

The catch:
You’ll need to carve your rivers and such yourself if they’re not already part of the heightmap, but you get to keep the rest of the helpful features like splines, width and depth settings, waves, materials, etc so you don’t have to re-invent the wheel. And it seems you can still use Landscape Edit Layers for non-destructive sculpting.
Underwater post process seems dependent on channel depth setting. (Just enable “affects landscape”, set it as needed, and disable it again. It won’t create the brush or layer once it’s already been placed in the level.)

Plugin is experimental though, so this may not work for newer engine versions going forward.

Edit: Don’t inherit from waterBodyCustom and try to set the type from there. It will need to be manually compiled every time you open your project or the level will crash when opened. Inheriting directly from Lake/River does not appear to have this problem and you can still disable landscape effects.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.