You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#jira UE-143721
SceneOutliner - Unloaded LandscapeProxy actors are now placed under their associated Landscape * FWorldPartitionActorDesc now has a GetSceneOutlinerParent() virtual which is used to build the actor hierarchy of the SceneOutliner * FLandscapeActorDesc overrides GetSceneOutlinerParent() to return the Landscape guid as it's parent Resaved all LandscapeProxies in the OpenWorld template map #rb patrick.enfedaque, jeanfrancois.dube #preflight 62191950f014007cf8b82a5e #ROBOMERGE-OWNER: marc.audy #ROBOMERGE-AUTHOR: sebastien.lussier #ROBOMERGE-SOURCE: CL 19152459 in //UE5/Release-5.0/... via CL 19157182 #ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845) [CL 19161144 by marc audy in ue5-main branch]
This commit is contained in:
@@ -278,6 +278,41 @@ FSceneOutlinerTreeItemPtr FActorHierarchy::FindOrCreateParentItem(const ISceneOu
|
||||
return bCreate ? Mode->CreateItemFor<FActorFolderTreeItem>(FActorFolderTreeItem(FFolder(FolderPath), RepresentingWorld.Get()), true) : nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
// Parent Actor (Actor attachement / parenting)
|
||||
const FGuid& ParentActorGuid = ActorDesc->GetSceneOutlinerParent();
|
||||
if (ParentActorGuid.IsValid())
|
||||
{
|
||||
if (UWorldPartition* WorldPartition = RepresentingWorld->GetWorldPartition())
|
||||
{
|
||||
if (const FWorldPartitionActorDesc* ParentActorDesc = WorldPartition->GetActorDesc(ParentActorGuid))
|
||||
{
|
||||
// If parent actor is loaded
|
||||
if (AActor* ParentActor = ParentActorDesc->GetActor())
|
||||
{
|
||||
// Find loaded parent actor node (from the object ptr)
|
||||
if (const FSceneOutlinerTreeItemPtr* ParentItem = Items.Find(ParentActor))
|
||||
{
|
||||
return *ParentItem;
|
||||
}
|
||||
else
|
||||
{
|
||||
return bCreate ? Mode->CreateItemFor<FActorTreeItem>(ParentActor, true) : nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
// Find unloaded parent actor node (from the guid)
|
||||
if (const FSceneOutlinerTreeItemPtr* ParentItem = Items.Find(ParentActorGuid))
|
||||
{
|
||||
return *ParentItem;
|
||||
}
|
||||
else
|
||||
{
|
||||
return bCreate ? Mode->CreateItemFor<FActorDescTreeItem>(FActorDescTreeItem(ParentActorGuid, WorldPartition)) : nullptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user