12 calls to FActorHierarchy::CreateWorldChildren in a 55k actor map with 15k loaded actors goes from 5.1 seconds to 2.7 seconds
#rb richard.malo, jeanfrancois.dube
#rnx
[CL 27373897 by patrick enfedaque in ue5-main branch]
- This can be used for data layers adding details on high end platforms.
- This can be used in content bundles with server-only data layers.
This is CL26804958 brought back with fixes.
#jira UE-176165, FORT-542185
#rb sebastien.lussier
[CL 27029196 by jeanfrancois dube in ue5-main branch]
- When editing level instance, only show loaded/unloaded actors of this level
- When editing level instance, don't prefix actor label with parent level instance(s)
- Replaced import data layer menu option by drag and dropping level instance data layers into main world AWorldDataLayers
- Removed menu option "Create Data Layer under <other> DataLayer" as it will never be allowed for DataLayerInstanceWithAsset since created without any valid DataLayerAsset.
- Disabled changing visibility and editor loading of DataLayerInstances of editing level instance
- Allow editing data layer of level instance when editing the level instance even when main world is not partitioned
- Changed font from bold to bold+italic on DataLayerInstances containing actors part of editor selection
- Removed suffix "- WorldDataLayers" on parent node of DataLayerInstances in the DataLayer Outliner
- Colorize and append "(Current)" to WorldDataLayer of editing Level Instance in the DataLayer Outliner
- Support Make Current on Level instance DataLayerInstances when editing level instance
#rb patrick.enfedaque
#jira UE-178410
#jira UE-177386
#preflight 63f8f0f19009dd70d7b87224
[CL 24441128 by richard malo in ue5-main branch]
Provide GetWorldDataLayer to Replace GetAWorldDataLayers
UObject might not have a level in its outerchain.
UDataLayerInstance::GetTypedOuter overloaded so compilation fails if done on UWorld, ULevel or AWorldDataLayer
#rb richard.malo
[CL 24344188 by philippe deseve in ue5-main branch]
- This will allow instanced world partition maps to maintain their own Data Layer runtime states.
- Deprecated DataLayerSubsystem since DataLayerManager superseeds its functionality.
- Added helpers like UWorld::GetDataLayerManager and UWorldPartitionBlueprintLibrary::GetDataLayerManager which will automatically find the associated DataLayerManager for the object it's running the BP.
#rb jeanfrancois.dube, patrick.enfedaque, philippe.deseve
[CL 23938773 by richard malo in ue5-main branch]
- Make FSceneOutlinerTreeItemID taking FGuid constructor explicit to find issues where wrong ID was passed in
- Convert DataLayer tree items to use the FArchiveMD5
#rb richard.malo, jeanfrancois.dube
#preflight 63d2d10f3656ea96dc9131da
[CL 23873707 by Patrick Enfedaque in ue5-main branch]
Allows to add DataLayerInstances by right-click on WorldDataLayers when they are not a "main worldpartiton" world data layer
Fix IsSubWorldDataLayers working in pie/cooked build for non-"main world partitition data layers"
#rb richard.malo
[CL 21696488 by philippe deseve in ue5-main branch]
Added FActorDescContainerCollection which can contains multiple UActorDescContainer
ActorDescContainer can be created to load ExternalFolder in various places for a world partition
WorldPartition no longer inherits UActorDescContainer and now inherits FActorDescContainerCollection
ActorsDesc are added to the right container on save based on their packagepath
HLODs generation only occurs on the Main WorldPartition Actors for the moment
Some WorldPartitionBuilders commandlets do not support having WorldPartitions with multiple ACtorDescContainer. In that case, the commandlet fails and outputs an error message.
#test cook AncientGame, cook city_sample, cook asteria_terrain, HLods generation on AncientGame, Level Instances workflow
#rb jeanfrancois.dube
#preflight 630ce860a416f6df25b74655
[CL 21691284 by philippe deseve in ue5-main branch]
Calls to retrieve data layers from the subsystem are now forwarded to a collection of WorldDataLayers
The collection forwards the call to the relevent WorldDataLayers
#rb richard.malo
#preflight 62bd9255b024a2608c311344
#test AncientGame, CitySample, Cook, PIE, -Game, Hlods
#ROBOMERGE-AUTHOR: philippe.deseve
#ROBOMERGE-SOURCE: CL 20894852 via CL 20894903 via CL 20894926
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)
[CL 20898599 by philippe deseve in ue5-main branch]
Move DataLayers' EditorWorldSetting logic from DataLayerEditorSubsystem & WorldDataLayers to DataLayerSubsystem
Use DataLayerInstance::GetOuterWorldDataLayers instead of retrieving the WorldDataLayers from UWorld::GetWorldDataLayers instead
Rename UDataLayerSubsystem::GetDataLayerFromAsset to GetDataLayerInstanceFromAsset to be inline with the rest of the API
Preparation for multiple AWorldDataLayers existing in the same world
#rb richard.malo
#test PIE, SIE, -game, Editing flow, cooked game, Hlods generation
#preflight 627402a0ca0ad32a968422af
#ROBOMERGE-AUTHOR: philippe.deseve
#ROBOMERGE-SOURCE: CL 20060072 via CL 20060595 via CL 20060607
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20062765 by philippe deseve in ue5-main branch]
Remove check in DataLayerHierarchy that the world need to be teared down when removing actors. Callback occurs when unloading cells.
#rb jeanfrancois.dube
#test PIE, SIE, Game
#preflight 62729fce2f6d177be3c5f198
#ROBOMERGE-AUTHOR: philippe.deseve
#ROBOMERGE-SOURCE: CL 20042858 via CL 20042862 via CL 20042869
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20044831 by philippe deseve in ue5-main branch]
Restrict the usage of retrieving an actor's DataLayerInstanace via it's cell to PIE/SIE and -game in editor builds.
Fix potential crash when trying to retrieve DataLayerInstances of an actor in non-worldpartition world
#test PIE, SIE, -game, cooked game, FN editing
#jira UE-150868
#rb richard.malo
#ROBOMERGE-AUTHOR: philippe.deseve
#ROBOMERGE-SOURCE: CL 20024307 via CL 20024321 via CL 20024344
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20025859 by philippe deseve in ue5-main branch]