Description

In levels where "WorldPartitionRuntimeHashSet" is specified as the runtime hash class, the world partition may not be correctly visible only in the package. This issue is reproduced only in packaged games and does not repro in the editor. 

This procedure involves preloading the WP level to be transitioned by AsyncLoadAsset. The preload level is then kept in the game instance, and the preloaded level is opened with OpenLevel as an exception to GC. Then, the persistent level opens fine, but the streamign level is not loaded at all and does not become visible.

It seems that the problem is that the following process of UWorldPartitionRuntimeHashSet::PostLoad is not executed,
FWorldDelegates::OnPreWorldInitialization, the level opens as expected. 

    if (GetTypedOuter<UWorld>()->IsGameWorld())
    {
        ForEachStreamingData([](const FRuntimePartitionStreamingData& StreamingData)
        {
            StreamingData.CreatePartitionsSpatialIndex();
            return true;
        });
    } 
Steps to Reproduce
  1. Open the attached project
  2. Packaging in the editor
  3. Launch the game

Result:

Streaming level is not visible on the map after transition

Expected:

Streaming level becomes visible on the map after the transition

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-221009 in the post.

0
Login to Vote

Fixed
Fix Commit31943210
CreatedAug 5, 2024
ResolvedAug 13, 2024
UpdatedAug 22, 2024
View Jira Issue