Move asset PostLoad call into the if() block that needs it when loading an anim graph node, as in this code path not all subobjects are loaded for the various assets that are referenced by the pose asset
This could still fail for very old assets, but at least unblocks this issue.
#jira UE-190467
#rb Nicholas.Frechette
[FYI] Jurre.deBaare
[CL 26700547 by thomas sarkanen in ue5-main branch]
This manifested as a problem dragging in MetHumans from Quixel Bridge.
Adding a preload dependency for asset player nodes (which include pose handlers) that recurses and preloads all dependencies too prevents load ordering issues where subobjects in anim assets were sometimes not correctly loaded
[FYI] Jurre.deBaare
#jira UE-190467
#rb Nicholas.Frechette
[CL 26482451 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]
-Added initial support for blend stack graphs.
-Changed Max Active Blends to be a compile time fixed value for blend stack.
-review-25906631 [at]Aaron.Cox, [at]Thomas.Sarkanen, [at]Samuele.Rigamonti
[CL 26167901 by jose villarroel in ue5-main branch]
Removed behaviour change regarding inertialization transitions or very low blend time standard blend transitions considering a valid transitions when their looping asset player reaches end and they are using automatic rules.
#rnx
#rb Aaron.Cox, Jose.Villarroel
[CL 25941436 by roland munguia in ue5-main branch]
- Added support for explicitly specifying the transitions trigger time when using state machine automatic transition rules.
- Fixed state machine automatic transitions rules not triggering from a looping animation.
- Fixed state machine automatic transitions rules that have their next state as a conduit state triggering before reaching the end of the animation.
- Consolidate all the ways to check if asset in asset player is looping into a single api call, IsLooping().
- Added getter for a AssetPlayer's DeltaTimeRecord.
- Added warning when a asset player is using looping animations with automatic rule based transitions.
#jira UE-171299, UE-180844, UE-185174
[CL 25877647 by roland munguia in ue5-main branch]
Additional changes:
- Added warnings for users using anim state events since we want to push towards using the state node functions.
- Added support for anim nodes to show any bound functions and not have them hardcoded.
- Added base context type for FAnimExecutionContext.
- Now users can specify the string for the default binding name of a function member reference in a BP by using the "DefaultBindingName" metadata tag. This will give the functionality to avoid having the default binding name be "NewFunction" and instead use the input string from the metadata tag.
#jira UE-184572
#rb Thomas.Sarkanen, jose.villarroel, aaron.cox
#preflight 646e6a836c2a2532b1f91efd
[CL 25631664 by roland munguia in ue5-main branch]
- Find and reuse existing Pose Watch Elements in the RBAN node, rather than creating new ones every time the editor is re-opened.
[REVIEW] [at]thomas.sarkanen, [at]lucas.dower
#jira UE-186593
#preflight 646c90ad4130b0ce5096a34f
#rnx
[CL 25583377 by nick brett in ue5-main branch]
This option is being disabled for now since it has never worked properly and it causes a engine crash.
#jira UE-185146
#preflight 6465161f2d446eac96e858f2
[CL 25512536 by roland munguia in ue5-main branch]