Implement function BP rename handling on a per-node basis, similar to existing variable rename handing
Move to using FBlueprintEditorUtils::GetMostUpToDateClass for property access in-editor. This ensures that any local renames are picked up prior to recompilation.
#jira UE-204823
#rb jaime.cifuentes, Phillip.Kavan
#changelist validated
#virtualized
[CL 31251563 by thomas sarkanen in 5.4 branch]
If a node has exposed pins, it will now show up as 'fast path' when all of its pins are constant (as well as when it is actually using the fast path). If a node has no pins exposed it still does not show up as 'fast path', by design to reduce visual clutter.
#jira UE-184014
#rb Jurre.deBaare
[CL 26740552 by thomas sarkanen in ue5-main branch]
Added a new anim node: AnimNext Parameters. This injects parameters into the AnimNext stack for all leafwards nodes.
Added a new way of binding to parameters on anim nodes.
- Added indirection to UAnimGraphNode_Base to allow different 'binding types' to be authored by deriving from UAnimGraphNodeBinding
- Added new binding type for AnimNext parameters
- Moved existing binding code (inc UI widget creation) into UAnimGraphNodeBinding_Base
- Binding types can be selected on a per-node or per-anim BP basis
Reworked FParamStack API a little
- Allow for better error checking when pushing/popping stack layers. Pushed layers can now only be subsequently popped by passing in the handle of the pushed layer.
- Standalone layers are now wrapped in an opaque handle rather than returning a unique ptr
- GetParamData APIs now perform more involved type checking, allowing derived object types & type conversions to be implemented
Improved parameter type sandboxing for automated tests. If running low-level type tests while execution was happening on another thread, the editor could crash because of invalidating already-existing types.
Lots of other small fixes to get workflows nicer and end-to-end functionality working
#rb Nicholas.Frechette,Jaime.Cifuentes,Jurre.deBaare
[CL 26455905 by thomas sarkanen in ue5-main branch]