Merging important crash fixes which happened past 5.4 deadlines but severely affect the new features in 5.4.
The fixes were made on top of functionality that is not yet in 5.4. so had to be merged manually.
#jira UE-211189
#rb Mieszko.Zielinski
[CL 33463624 by mikko mononen in 5.4 branch]
- Implies that parameters are only set once at start
- Allows parameters to be safely mutated if needed, e.g. via property references
[CL 30765232 by mikko mononen in ue5-main branch]
- Added FStateTreePropertyRef which allows to get pointer to bindable output properties in the StateTree
- This will eventually supercede FStateTreeStructRef
[CL 30563615 by mikko mononen in ue5-main branch]
- Added property override logic into FPropertyBagInstanceDataDetails
- Added hooks to allow to customize the peoperty override logic by deriving from FPropertyBagInstanceDataDetails
- Added array of overridden property IDs in FStateTreeReference
#rb Mieszko.Zielinski
[CL 30502099 by mikko mononen in ue5-main branch]
Upgrade the overrides and callsites in all of Epic's code.
Every class that can be subclassed by licensees that has its override change needs to keep the old version of the function as deprecated. Otherwise subclasses that call Super::GetAssetRegistryTags will have a compile error instead of a deprecation warning.
Several classes had their own extension method for GetAssetRegistryTags being passed on to user data classes. Updated all of those to take FAssetRegistryTagsContext just like GetAssetRegistryTags does.
#rnx
#rb Francis.Hurteau
[CL 30224166 by matt peters in ue5-main branch]
- Allow each state to have parameters (not super useful yet)
- Made property bindings for parameters to retain binding when a param is renamed (keeps track of the property bag ID)
- Fixed access of temporary instance data with EStateTreeDataSourceType::StateParameterData
- Added comments for UStateTreeState properties
- Changed property order of UStateTreeState so that display data comes first, then state settings, and finally parameters
- Fixed FStateTreeStateParametersInstanceDataDetails to allow property editing and value binding at the same time
#rb Mieszko.Zielinski
[CL 30112368 by mikko mononen in ue5-main branch]