Commit Graph

75 Commits

Author SHA1 Message Date
jeanfrancois dube
f27a901623 Data Layers: when double-clicking on a data layer instance, only append to current state if control is down, otherwise only apply selected data layer instance.
#rb Richard.Malo
[FYI] jeansebastien.guay

[CL 30374661 by jeanfrancois dube in ue5-main branch]
2023-12-18 08:29:44 -05:00
patrick enfedaque
b7eaad89dc WorldPartition: Add UActorDescContainerInstance/FWorldPartitionActorDescInstance which take transient/context data from UActorDescContainer/FWorldPartitionActorDesc leaving them as pure on disk representations.
- UActorDescContainerInstance contains: Transform, ContainerID, InstancingContext
- FWorldPartitionActorDescInstance contains: ResolvedDataLayers, RefCounts, Remapped Instanced actor path, Actor loading code

#rb JeanFrancois.Dube, Richard.Malo, Sebastien.Lussier
#tests editor, cook, pie, hlod builder, level instance, internal projects

[CL 30260359 by patrick enfedaque in ue5-main branch]
2023-12-12 06:59:42 -05:00
richard malo
ff60d1b39b Fixed typo in menu option "Create New Data Layer With Asset" (DataLayer -> Data Layer)
#rb patrick.enfedaque

[CL 28630127 by richard malo in ue5-main branch]
2023-10-10 14:20:49 -04:00
richard malo
1edef6d895 Changed create new data layer menu to Changed create new data layer with asset (when not using deprecated data layers) which allows to create/choose an existing data layer asset and assign it to the newly created Data Layer Instance in one operation.
#rb patrick.enfedaque
#jira UE-195294

[CL 28550517 by richard malo in ue5-main branch]
2023-10-06 14:34:17 -04:00
richard malo
dcf113a2fb WorldPartition: Added option in WorldDataLayers actor to save each DataLayerInstances in their own file (disabled by default)
#rb patrick.enfedaque, jeanfrancois.dube
#jira UE-196867

[CL 28546065 by richard malo in ue5-main branch]
2023-10-06 13:03:20 -04:00
steve robb
51f3ea53ae Removed ChooseClass.h includes.
#rb trivial

[CL 27823723 by steve robb in ue5-main branch]
2023-09-13 05:43:01 -04:00
patrick enfedaque
f5d40f863d SceneOutliner: dissociate bShowTransient from showing Level Instance hierarchy
- Remove some redundant filters now that this is done
- ISceneOutlinerMode::InitializeViewMenuExtender allows extending the menu (use Extension hooks) instead of only adding through ISceneOutlinerMode::CreateViewContent

#rb richard.malo
#rnx

[CL 27559488 by patrick enfedaque in ue5-main branch]
2023-09-01 13:03:00 -04:00
richard malo
dd61b26132 Prevent assigning actor to private data layer not part of the same WorldDataLayers
#rb patrick.enfedaque
#jira UE-184478
#preflight 644baf9ef502608229e5fe83

[CL 25238952 by richard malo in ue5-main branch]
2023-04-28 16:01:13 -04:00
philippe deseve
3005ef7582 Non-user managed actors can no longer be added/removed to DataLayers via the DataLayerOutliner (similar to DragnDropOp)
Removed DataLayerMode capture of this as it is not valid when the context menu is re-created

#rb richard.malo

[CL 24991903 by philippe deseve in ue5-main branch]
2023-04-11 11:30:47 -04:00
patrick enfedaque
3773a4f9ef DataLayer: Private DataLayer
- Editor only DataLayer type that can be used for filters without having to create DataLayer asset

#rb richard.malo
#preflight 6422e1065e52099fe3ce0745
#rnx

[CL 24820907 by patrick enfedaque in ue5-main branch]
2023-03-28 12:23:16 -04:00
philippe deseve
a0b4da2047 Expand UDataLayerInstance interface in preparation for ExternalDataLayer.
Allow DataLayerInstance to not support Parenting or being parented.
Allow preventing adding or removing actors from the DataLayerOutliner
Allow preventing adding DataLayerInstance to the actor editor context
Add UDataLayerInstance::IsUserManaged to define if the data layer creation/deletion is managed by the user.

#rb richard.malo

[CL 24797884 by philippe deseve in ue5-main branch]
2023-03-26 15:44:07 -04:00
jeanfrancois dube
ca323e9920 Scene Outliner: don't sort unloaded actors at the end of the list to avoid messy behavior when changing the loaded state of an actor.
#rb richard.malo
#preflight 641af921691c5ebc153fcb51

[CL 24778066 by jeanfrancois dube in ue5-main branch]
2023-03-24 08:26:31 -04:00
patrick enfedaque
14d2ded84b DataLayer: Refactor some relabel code to support DataLayerInstanceWithAsset renaming (when they are private)
- Renamed to ShortName to simplify
- Moved into FDataLayerUtils
- New code isn't deprecated as support for renaming private DLs will be added
- New code is independant from deprecated code 5.1/5.0 that can be removed once we update our internal projects (UE-176057)

#rb richard.malo, philippe.deseve
#preflight 64186fb65d3e25354ffddcf3
#rnx

[CL 24723930 by patrick enfedaque in ue5-main branch]
2023-03-20 17:16:42 -04:00
richard malo
6583fa5db3 Allow editing data layers of level instance when editing the level instance
- 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]
2023-02-28 08:35:38 -05:00
philippe deseve
6df56def9a UDataLayerInstance can be outered to a Uobject other than AWorldDataLayers
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]
2023-02-21 13:26:58 -05:00
richard malo
cb32fe9838 Fixed crash when opening data layer menu after closing/reopening the data layer outliner
#rb patrick.enfedaque
#jira UE-177265
#preflight 63ee6f0c1d71bcd2627afc53

[CL 24267984 by richard malo in ue5-main branch]
2023-02-16 15:59:16 -05:00
richard malo
1f05a96ddf Properly hook Data Layers menu extenders and pass selection to delegate.
#rb patrick.enfedaque
#preflight 63dbe5b8797b029c0adbbdfa

[CL 23984017 by richard malo in ue5-main branch]
2023-02-02 18:41:35 -05:00
richard malo
047bfb94b7 - Added UDataLayerManager which is local to each WorldPartition.
- 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]
2023-01-31 17:03:25 -05:00
jeanfrancois dube
88e3c64d55 Data Layers: don't allow user changes for non-user managed actor types.
#rb richard.malo
#preflight none

[CL 23866536 by jeanfrancois dube in ue5-main branch]
2023-01-26 08:24:51 -05:00
richard malo
eeb4d65df4 Show child actors of child level instances even when editing a level instance
#rb patrick.enfedaque

[CL 23666583 by richard malo in ue5-main branch]
2023-01-12 13:42:23 -05:00
richard malo
c4e4345fdd When showing actors and level instance content in the Data Layer outliner, could not interact with level instance part of a data layer.
#rb patrick.enfedaque

[CL 23662401 by richard malo in ue5-main branch]
2023-01-12 09:37:48 -05:00
richard malo
e803576ee7 Removed "Rename Data Layer" menu entry in Data Layer Outliner for maps using Data Layer Assets.
#rb philippe.deseve

[CL 23260954 by richard malo in ue5-main branch]
2022-11-24 12:32:40 -05:00
richard malo
c4d6f9fc92 Added "Browse to asset" on Data Layer items in Data Layer Outliner.
#rb patrick.enfedaque

[CL 23228062 by richard malo in ue5-main branch]
2022-11-21 17:19:31 -05:00
richard malo
f917de9698 Data Layer outliner double click on Data Layers now adds or removes the Data Layer to/from the editing context (same behavior as Content Bundle outliner).
#rb jeanfrancois.dube

[CL 23203560 by richard malo in ue5-main branch]
2022-11-18 15:32:06 -05:00
richard malo
0556e56be5 Fixed check when using "Make Current Data Layer" after deleting a Data Layer in the outliner.
#rb patrick.enfedaque
#jira UE-168651
#preflight 635c0ce5052cb0bae6a5c9bc

[CL 22837504 by richard malo in ue5-main branch]
2022-10-28 16:41:09 -04:00