Commit Graph

192 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
jeanfrancois dube
06c2e7be30 Data Layers: implement current data layers coloration, will use the data layer debug color if a single data layers is current, otherwise white if more than one.
#rb Richard.Malo, vincent.beauchemin
[FYI] jeansebastien.guay

[CL 30350544 by jeanfrancois dube in ue5-main branch]
2023-12-15 11:40:42 -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
richard malo
6859ec0c2d Fixed rare crash in Data Layer outliner when binded to a null world
#rb jeanfrancois.dube
#jira UE-196436

[CL 28500190 by richard malo in ue5-main branch]
2023-10-05 11:14:39 -04:00
teddemunnik
c8113cc6f4 PR #10872: Fix crash in data layer editor when streaming-out a partitioned level with runtime data layers
#rb patrick.enfedaque
#jira UE-195297

[CL 28003510 by teddemunnik in ue5-main branch]
2023-09-19 13:52:42 -04:00
jeanfrancois dube
635744b0ae Data Layers: change default from editor to runtime when creating public data layer assets.
#rb richard.malo
[FYI] jeansebastien.guay

[CL 27827380 by jeanfrancois dube in ue5-main branch]
2023-09-13 09:02:22 -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
patrick enfedaque
a7398cc00d SceneOutliner: Optimize cost of FWorldPartitionActorDesc::IsLoaded call (which calls StaticFindObject). Use new FEditorLoadedActorCache helper instead.
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]
2023-08-25 07:43:32 -04:00
patrick enfedaque
ee4a7776d8 DataLayerEditorSubsystem: Avoid SceneOutliner refreshes
- remove HasDataLayers() condition which was added for fixing CopyPaste of actors and no longer needed (tested copy/paste)
- avoid calling ActorEditorContextClientChanged in BroadcastDataLayerChanged and instead call it in AddActorToEditorContext/RemoveActorFromEditorContext

#rb richard.malo
#rnx

[CL 27342033 by patrick enfedaque in ue5-main branch]
2023-08-24 10:55:44 -04:00
patrick enfedaque
b697e201cf ActorEditorContext
- Add FScopedActorEditorContextFromActor which pushes a new context based on the provided actor (will be used in next Foliage CL)
- Implemented through IActorEditorContextClient(s) with EActorEditorContextAction::InitializeContextFromActor
- Remove Adding of DataLayers in ActorPartitionSubsystem as this will be done by the DataLayerEditorSubsystem through the active editor context
- Properly support ContextBundles in ActorPartitionSubsystem to generate unique name
- Cleanup APartitionActor naming API + Labels

#rb richard.malo
#rnx

[CL 27309490 by patrick enfedaque in ue5-main branch]
2023-08-23 12:21:45 -04:00
jeanfrancois dube
f6efc708f9 World Partition: added support for client and server only data layers activation.
- 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]
2023-08-11 11:14:31 -04:00
patrick enfedaque
aee5dd80e2 DataLayer Outliner: Fix deleted actors showing as unloaded
#rb richard.malo
#rnx

[CL 26017729 by patrick enfedaque in ue5-main branch]
2023-06-15 12:44:13 -04:00
philippe deseve
5025986046 AActor types can now supports differents UDataLayerInstance types via IsDataLayerTypeSupported
Deprecate ActorTypeSupportsDataLayer

#rb richard.malo

[CL 25880291 by philippe deseve in ue5-main branch]
2023-06-08 15:54:51 -04:00
philippe deseve
587c530174 RemoveAllDataLayers now goes through DataLayerInstance::RemoveActor interface to perform Removal validation code
#rb richard.malo

[CL 25872031 by philippe deseve in ue5-main branch]
2023-06-08 11:07:47 -04:00
patrick enfedaque
073de4ad22 DataLayerTreeItem: workaround compiler bug
#rb philippe.deseve, jeanfrancois.dube
#preflight 646f60e36c2a2532b14d13c3
#rnx

[CL 25644303 by patrick enfedaque in ue5-main branch]
2023-05-26 12:02:43 -04:00
kirill zorin
de8db5ff76 Converting ARO-facing raw pointers to TObjectPtr ahead of raw pointer ARO API deprecation.
#rb zousar.shaker
#rb markus.breyer
#rb robert.manuszewski

#preflight 646391406b1406b54ab15460

[CL 25489627 by kirill zorin in ue5-main branch]
2023-05-16 10:52:49 -04:00
richard malo
86eaeb896a Small refactor : Use FArchiveMD5::GetGuidFromHash to simplify code
#rb jeanfrancois.dube
#preflight 64555ee9ed7ffaa0f5d56e7d

[CL 25369689 by richard malo in ue5-main branch]
2023-05-08 09:08:07 -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
philippe deseve
905303061e Fix static analysis error
#rb none
#preflight 642583c2c42c7fd1cbae978e

[CL 24867828 by philippe deseve in ue5-main branch]
2023-03-31 02:38:56 -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