#ROBOMERGE-OWNER: thomas.sarkanen
#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 20279395 via CL 20280704 via CL 20280803 via CL 20281464 via CL 20281580
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20285451 by thomas sarkanen in ue5-main branch]
Originally prepared by markus.breyer with some additional fixes for some issues I was seeing while testing
[REVIEW] [at]markus.breyer, [at]robert.manuszewski
#ROBOMERGE-AUTHOR: tom.noonan
#ROBOMERGE-SOURCE: CL 20277717 via CL 20277723 via CL 20277728 via CL 20277731
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20278380 by tom noonan in ue5-main branch]
- Only call FAssetRegistryModule::AssetCreated if necessary
- Call FAssetRegistryModule::AssetCreated before save so that saved packages doesn't end up with PKG_NewlyCreated flag
#rb bob.tellez
#preflight 627bf0630a5817c9d9525434
#ROBOMERGE-AUTHOR: patrick.enfedaque
#ROBOMERGE-SOURCE: CL 20146875 via CL 20147079 via CL 20147762
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
[CL 20149912 by patrick enfedaque in ue5-main branch]
Also restores follow-up CLs 19973746, 19973782
FStaticParameterSet::MaterialLayers can't be deprecated, since a property with the same name is included via FStaticParameterSetRuntimeData
So instead, FMaterialLayersFunctionsRuntimeData is updated with SerializeFromMismatchedTag, to allow serializing a full FMaterialLayersFunction.
When this happens, the EditorOnly portion is stored in a separate heap allocation, and then transferred to FStaticParameterSet::EditorOnly::MaterialLayers
#preflight 626c3405e31dbb512cef1e98
[Backout] - CL19973745
#fyi bob.tellez
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL19964485
#fyi Ben.Ingram
Original CL Desc
-----------------------------------------------------------------
Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over. So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329
[CL 20043286 by Jason Nadro in ue5-main branch]
#fyi Ben.Ingram
Original CL Desc
-----------------------------------------------------------------
Add 'Optional' EditorOnly data for UMaterialInterface and UMaterialFunctionInterface
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over. So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329
[CL 19973745 by bob tellez in ue5-main branch]
These are separate UObject hierarchies that store editor-only UPROPERTIES, but can be included with cooked content, which allows full editor support.
In principle, all editor-only properties could be moved over. So far, this has been limited to UMaterialExpressions, and data related to material parameters.
FStaticParameterSet, FMaterialLayersParameters, and FMaterialCachedExpressionData have all been split into separate editor-only/non-editor-only classes,
which allows the editor-only portion to be stored on the optional editor-only UObject.
#preflight 626ab21dad56c0cbbea32dc4
#rb jason.nadro, francis.hurteau
#jira FORT-463329
[CL 19964485 by Ben Ingram in ue5-main branch]
- UWorldSubsystem::DoesSupportWorldType still doesn't support EWorldType::Inactive so behavior remains unchanged
- WorldPartitionCookPackageSplitter now initializes the world if it isn't already so that UDataLayerSubsystem is initialized at cook time
- Remove remaining code path where same world could be reused if it was initialized as inactive (Opening unsaved new level in content browser will now require saving first)
#jira none
#rb richard.malo, jeanfrancois.dube
#preflight 62669d3a0634d0904cdba283
#test CitySample, AncientWorld
[CL 19917858 by Patrick Enfedaque in ue5-main branch]
- Use FLinkerInstancingContext Tag to load all external actors instead of using a global map
#rb richard.malo, jeanfrancois.dube, francis.hurteau
#preflight 624aea29c51908059ae6b82f
#rnx
[CL 19607995 by Patrick Enfedaque in ue5-main branch]
331s -> 0.28s to consolidate objects when cloning a small shooting range map
#rb Robert.Manuszewski,Chris.Gagnon,Francis.Hurteau,Jamie.Dale,JeanLuc.Corenthin,Phillip.Kavan
#ROBOMERGE-AUTHOR: johan.torp
#ROBOMERGE-SOURCE: CL 19507095 via CL 19507103 via CL 19507108 via CL 19507110
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)
[CL 19514683 by johan torp in ue5-main branch]
- API to control default behavior of whether newly created content is made public or private on creation
- Ensure duplication copies original's Public/Private state
#rb Francis.Hurteau
#preflight 623b6f07da56b5683a0b56a4
#ROBOMERGE-OWNER: scott.nelson
#ROBOMERGE-AUTHOR: scott.nelson
#ROBOMERGE-SOURCE: CL 19485709 via CL 19487498 via CL 19498786 via CL 19498791
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v936-19480137)
[CL 19501393 by scott nelson in ue5-main branch]
UDeprecatedDataLayerInstance allows to boot level using deprecated UDataLayers
Worlds using DataLayer can run the DataLayerToAssetCommandlet to transition their existing DataLayers
FActorDataLayer interface is deprecated.
DataLayers Blueprint referencers should now use DataLayerAsset to retrieve DataLayerInstances.
DataLayer Code referencers should now use DataLayerAssets or DataLayerInstance FName to retrieve DataLayerInstances.
DataLayerLabels now only used for display/UI purpose
Relabeling DataLayers is not permitted anymore on new DataLayerInstances (allowed on UDeprecatedDataLayerInstance)
Added Changelist Validation for DataLayers
Added a column to the datalayer outliner showing any data layer errors.
#rb richard.mal jeanfrancois.dube
#preflight 623098c2050dc69468b6a297 (errors only related to lyra, which do not exist in this stream)
#ROBOMERGE-OWNER: philippe.deseve
#ROBOMERGE-AUTHOR: philippe.deseve
#ROBOMERGE-SOURCE: CL 19385808 via CL 19387392
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)
[CL 19389077 by philippe deseve in ue5-main branch]
ImgMedia and normal texture import both registered for EXR
would randomly import one or the other on different runs of Editor
adjust priorities so they are not ambiguous
also add detection and logging to prevent this
#rb Julien.StJean
#preflight 622f441c6131e07703a04ed5
[CL 19373316 by charles bloom in ue5-main branch]