We are experiencing a hang on loading our main level that has been traced to the PCG Landscape Cache.
Our current setup is:
- A large single map with world partitioning enabled
- 3 PCG volumes, components are partitioned with hierarchical generation turned on in the graphs, all set to generate at runtime
- Two of the graphs Get Spline Data using an actor selection tag, then Get Landscape Data and use that as the projection target for the spline sampler points
- We need to use the landscape data for height, normals and because our landscape uses paint layers and we are filtering based on the paint layers
The hang memory dump shows the blocked path is:
NtWaitForSingleObject ← WaitForSingleObjectEx ← FEventWin::Wait ← OpenReadBulkData ← FBulkData::TryLoadDataIntoMemory ← FBulkData::GetCopy ← FPCGLandscapeCacheEntry::SerializeFromBulkData ← UPCGLandscapeCache::GetCacheEntry ← UPCGLandscapeData::ProjectPoint
Is there anything in our setup we could improve or an alternative way of getting the data we need that could stop this hang? The more PCG we use the more frequently it will occur but we are a small team so using PCG is the quickest way to populate the world.