UE5.3 World Partition does not load anything on client sometimes

Hello, we recently encountered a time-consuming bug in our project that uses 5.3.1. It appears to be a common issue as we’ve found others experiencing the same problem.

“world partition streaming stops working”

“world partition randomly shows no cells and loads no content in pie”

The Problem
Every other PIE launch results in no landscape/WP cells loading around you. If you encounter the bug, you can enable ‘wp.Runtime.ToggleDrawRuntimeCellsDetails 1’ to confirm that only one cell is loaded/activated. The loaded cell is always the last one or the highest level.

The Cause
The issue arises from having a LevelInstanceActor in the world with a map that contains actors of type ‘AWorldDataLayers / AWorldPartitionMiniMap’. I suspect it’s related to the DataLayers. You can put a breakpoint in void FSpatialHashStreamingGrid::GetCells and observe that at the end of the function, OutActivateCells always contains just a single entry (while the bug is happening). I suspect the extra DataLayerActor causes a problem when it evaluates these conditions.

if (!Cell->HasDataLayers() || Cell->HasAnyDataLayerInEffectiveRuntimeState(EDataLayerRuntimeState::Activated))
else if (Cell->HasAnyDataLayerInEffectiveRuntimeState(EDataLayerRuntimeState::Loaded))

The Fix
The solution is straightforward. Open the level instance map, open WorldSettings.WorldPartitionSetup, and press ‘Disable World Partition’. This action will delete the two actors.

Hope this helps and spares you the pain of having to debug WP code.

4 Likes