Description

This is a regression. Tested in //UE5/Release-5.2 CL26001984

The editor crashes with an assertion after saving a World Partition enabled level with a landscape that contains a PCG Volume.

Steps to Reproduce
  1. Create a new Blank project
  2. Enable the Procedural Content Generation Framework (PCG) plugin
  3. Restart the project
  4. Right click in the Content Browser then select PCG > PCG Graph
  5. Open the new PCG Graph
    1. Expand the Input node then drag off the Landscape output pin and create a Surface Sampler node
    2. From the Surface Sampler's out pin drag then create a Transform Points node
    3. From the Transform Points' out pin drag then create a Static Mesh Spawner
    4. From the Static Mesh Spawner's out pin drag then connect it to the Output node's out pin
    5. Save and close the PCG asset
  6. Drag and drop the PCG asset onto the landscape in the level
  7. Save the level by pressing Ctrl+S or selecting the Floppy Disk Icon in the top left of the editor
  8. Name the map anything then select Save
  9. Observe what happens once the progress bar reaches ~100%

Expected Results:
The Map is saved with the PCG Volume in it.

Actual Results:
The editor crashes with Assertion.

Assertion failed: LandscapeGuid.IsValid() [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Landscape\Private\Landscape.cpp] [Line: 4780]
Callstack
Assertion failed: LandscapeGuid.IsValid() [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Landscape\Private\Landscape.cpp] [Line: 4780]
UnrealEditor-PCG!1e0d8030000  + 2e1932
UnrealEditor-PCG!1e0d8030000  + 2e1d42
UnrealEditor-PCG!1e0d8030000  + 30f170
UnrealEditor-CoreUObject!FObjectInitializer::PostConstructInit() [UObjectGlobals.cpp:3895]
UnrealEditor-CoreUObject!FObjectInitializer::~FObjectInitializer() [UObjectGlobals.cpp:3721]
UnrealEditor-CoreUObject!StaticConstructObject_Internal(FStaticConstructObjectParameters const &) [UObjectGlobals.cpp:4365]
UnrealEditor-CoreUObject!FLinkerLoad::CreateExport(int) [LinkerLoad.cpp:5200]
UnrealEditor-CoreUObject!FLinkerLoad::IndexToObject(FPackageIndex) [LinkerLoad.cpp:5616]
UnrealEditor-CoreUObject!FLinkerLoad::CreateExport(int) [LinkerLoad.cpp:4886]
UnrealEditor-CoreUObject!FLinkerLoad::CreateExportAndPreload(int,bool) [LinkerLoad.cpp:3872]
UnrealEditor-CoreUObject!FLinkerLoad::LoadAllObjects(bool) [LinkerLoad.cpp:4050]
UnrealEditor-CoreUObject!LoadPackageInternal(UPackage *,FPackagePath const &,unsigned int,FLinkerLoad *,FArchive *,FLinkerInstancingContext const *,FPackagePath const *) [UObjectGlobals.cpp:1805]
UnrealEditor-CoreUObject!LoadPackage(UPackage *,FPackagePath const &,unsigned int,FArchive *,FLinkerInstancingContext const *,FPackagePath const *) [UObjectGlobals.cpp:1986]
UnrealEditor-CoreUObject!LoadPackage(UPackage *,wchar_t const *,unsigned int,FArchive *,FLinkerInstancingContext const *) [UObjectGlobals.cpp:1959]
UnrealEditor-Engine!FWorldPartitionActorDesc::Load() [WorldPartitionActorDesc.cpp:816]
UnrealEditor-Engine!FWorldPartitionLoadingContext::FDeferred::RegisterActor(FWorldPartitionActorDesc *) [WorldPartitionHandle.cpp:184]
UnrealEditor-Engine!FWorldPartitionLoadingContext::LoadAndRegisterActor(FWorldPartitionActorDesc *) [WorldPartitionHandle.cpp:44]
UnrealEditor-Engine!FWorldPartitionHandleImpl::ToReference(TWorldPartitionHandle<FWorldPartitionHandleImpl> const &) [WorldPartitionHandle.cpp:235]
UnrealEditor-Engine!static void `IWorldPartitionActorLoaderInterface::ILoaderAdapter::AddReferenceToActor'::`2'::<lambda_1>::operator() [WorldPartitionActorLoaderInterface.cpp:295]
UnrealEditor-Engine!IWorldPartitionActorLoaderInterface::ILoaderAdapter::AddReferenceToActor(TWorldPartitionHandle<FWorldPartitionHandleImpl> &) [WorldPartitionActorLoaderInterface.cpp:310]
UnrealEditor-Engine!IWorldPartitionActorLoaderInterface::ILoaderAdapter::RefreshLoadedState() [WorldPartitionActorLoaderInterface.cpp:170]
UnrealEditor-Engine!IWorldPartitionActorLoaderInterface::ILoaderAdapter::Load() [WorldPartitionActorLoaderInterface.cpp:50]
UnrealEditor-Engine!UWorldPartition::Initialize(UWorld *,UE::Math::TTransform<double> const &) [WorldPartition.cpp:685]
UnrealEditor-Engine!ULevel::OnLevelLoaded() [Level.cpp:3019]
UnrealEditor-Engine!UWorld::InitWorld(FWorldInitializationValues) [World.cpp:2208]
UnrealEditor-UnrealEd!7ff982e70000  + 89aeda
UnrealEditor-UnrealEd!7ff982e70000  + 885e3f
UnrealEditor-UnrealEd!7ff982e70000  + 86e68f
UnrealEditor-Core!FExec::Exec(UWorld *,wchar_t const *,FOutputDevice &) [Exec.cpp:18]
UnrealEditor-Engine!UEngine::Exec(UWorld *,wchar_t const *,FOutputDevice &) [UnrealEngine.cpp:4685]
UnrealEditor-UnrealEd!7ff982e70000  + 140d610
UnrealEditor-UnrealEd!7ff982e70000  + c6c400
UnrealEditor-LevelEditor!FLevelEditorActionCallbacks::SaveCurrentAs() [LevelEditorActions.cpp:491]
UnrealEditor-LevelEditor!TBaseStaticDelegateInstance<void ,FDefaultDelegateUserPolicy>::ExecuteIfSafe() [DelegateInstancesImpl.h:777]
UnrealEditor-Slate!7ff9e3770000  + aeb0
UnrealEditor-Slate!7ff9e3770000  + f3dbf
UnrealEditor-Slate!7ff9e3770000  + 2282c2
UnrealEditor-Slate!7ff9e3770000  + 1f99da
UnrealEditor-Slate!7ff9e3770000  + 29a24a
UnrealEditor-Slate!7ff9e3770000  + 29dbb5
UnrealEditor-Slate!7ff9e3770000  + 2bf038
UnrealEditor-Slate!7ff9e3770000  + 13b5a
UnrealEditor-Slate!7ff9e3770000  + 7e0e5
UnrealEditor-Slate!7ff9e3770000  + 6b373
UnrealEditor-Slate!7ff9e3770000  + 5e28a
UnrealEditor-ApplicationCore!FWindowsApplication::ProcessDeferredMessage(FDeferredWindowsMessage const &) [WindowsApplication.cpp:2231]
UnrealEditor-ApplicationCore!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,1> &,HWND__ *,unsigned int,unsigned __int64,__int64,int,int,unsigned int) [WindowsApplication.cpp:2738]
UnrealEditor-ApplicationCore!FWindowsApplication::ProcessMessage(HWND__ *,unsigned int,unsigned __int64,__int64) [WindowsApplication.cpp:1099]
UnrealEditor-ApplicationCore!FWindowsApplication::AppWndProc(HWND__ *,unsigned int,unsigned __int64,__int64) [WindowsApplication.cpp:937]
USER32!7ffa46370000  + e858
USER32!7ffa46370000  + e299
UnrealEditor-ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages(bool) [WindowsPlatformApplicationMisc.cpp:148]
UnrealEditor!7ff70b890000  + 776d
UnrealEditor!7ff70b890000  + 2c9bc
UnrealEditor!7ff70b890000  + 2caaa
UnrealEditor!7ff70b890000  + 2ff84
UnrealEditor!7ff70b890000  + 45f64
UnrealEditor!7ff70b890000  + 4935a
KERNEL32!7ffa47fe0000  + 17614
ntdll!7ffa48110000  + 526b1

Have Comments or More Details?

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

15
Login to Vote

Cannot Reproduce
CreatedAug 15, 2023
ResolvedSep 19, 2023
UpdatedSep 19, 2023