Commit Graph

682 Commits

Author SHA1 Message Date
thomas sarkanen
730f6b7891 Fixed being unable to select external BPs in linked anim layer nodes
Switched custom parsing to use FEditorClassUtils::GetImplementedInterfaceClassPathsFromAsset

#jira UE-192562

[CL 27072096 by thomas sarkanen in ue5-main branch]
2023-08-14 11:44:09 -04:00
johan torp
10095e98d9 Drive-by cook determinism fix
#rb none

[CL 26919206 by johan torp in ue5-main branch]
2023-08-08 12:00:19 -04:00
robert manuszewski
d3991fec9b Fixing potential compile errors ahead of enabling TObjectPtr GC barrier
#rb trivial

[CL 26868625 by robert manuszewski in ue5-main branch]
2023-08-05 06:09:54 -04:00
thomas sarkanen
dfdc431256 Fix anim graph node fast path icon not appearing for nodes that do not use blueprint logic
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]
2023-08-01 11:35:48 -04:00
thomas sarkanen
6f5c25c598 Fix crash dragging a Metahuman into a level
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]
2023-07-31 04:39:32 -04:00
jaime cifuentes
56ddf2c344 Fixed BlueprintEditor not getting refreshed after adding an animation layer node into an animation graph
#jira UE-173106
#rb thomas.sarkanen

[CL 26665746 by jaime cifuentes in ue5-main branch]
2023-07-28 03:21:03 -04:00
jaime cifuentes
e71560bdff Added compiler note and visual warnings to state machine transitions if the transition rule has logic but the flag for automatic rule based condition is set
#jira UE-170338
#rb jose.villarroel

[CL 26665714 by jaime cifuentes in ue5-main branch]
2023-07-28 03:19:20 -04:00
thomas sarkanen
a3f5998775 Fix node bindings not being present for nodes that are drag-dropped
#jira UE-190695
#rb jose.villarroel

[CL 26568590 by thomas sarkanen in ue5-main branch]
2023-07-25 06:18:59 -04:00
thomas sarkanen
5263a174df Fix crash on loading an anim BP with pose hander nodes that require skeleton updates to their animations
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]
2023-07-20 07:42:06 -04:00
jose villarroel
6dc26fd3fb Added "Update If Active" flag to property access, to allow freezing specific properties during blend out.
[REVIEW] [at]Thomas.Sarkanen

[CL 26478895 by jose villarroel in ue5-main branch]
2023-07-19 21:32:37 -04:00
thomas sarkanen
57122faf0a AnimNext params in Anim BPs
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]
2023-07-19 04:36:34 -04:00
euan carmichael
a241103497 Player nodes in blendspace graphs are now added to GraphAssetPlayerInformation
# jira UE-188902
# rb Thomas.Sarkanen

[CL 26212623 by euan carmichael in ue5-main branch]
2023-06-23 12:54:11 -04:00
jose villarroel
0403d0b457 Blend Stack:
-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]
2023-06-21 18:41:47 -04:00
marc audy
d1f48fc5c8 Fix implicit capture of this using [=] deprecated in C++20
#jira
#rnx

[CL 25989494 by marc audy in ue5-main branch]
2023-06-14 15:07:58 -04:00
roland munguia
517713a0c8 Fix crash due to type casting for anim bp compile warning in a state transition node when using looping asset player with automatic rule.
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]
2023-06-12 17:55:00 -04:00
roland munguia
6b5c50fd1f Comment warning for looping asset players and using automatic rule based transitions.
#rb Aaron.Cox

[CL 25880373 by roland munguia in ue5-main branch]
2023-06-08 15:56:25 -04:00
roland munguia
93720bd718 Fixes for automatic transitions rules and added the feature to manually set their trigger time.
- 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]
2023-06-08 14:19:19 -04:00
dan oconnor
a418c0e6dc Non unity fix
#rb none
#rnx
#jira
#preflight

[CL 25720351 by dan oconnor in ue5-main branch]
2023-06-01 00:21:32 -04:00
dan oconnor
8eb692c606 Make explicit and validate ublueprint and ubpgc classes, honor the mappings when creating a blueprint from a UClass
#preflight 647551ded36191bd26b82118
#jira UE-187090
#rb Phillip.Kavan

[CL 25720111 by dan oconnor in ue5-main branch]
2023-05-31 23:26:13 -04:00
roland munguia
7dc3bb57a2 State machine entry, exit, fully blended in, and fully blended out anim node functions.
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]
2023-05-25 18:06:26 -04:00
daniel holden
6ccf5e03c5 Added experimental DeadBlending animation graph node.
#jira UE-184569
#rb keith.yerek
#rb danny.champman
#preflight 646e0593f85111e06c8ff205

[CL 25601022 by daniel holden in ue5-main branch]
2023-05-24 09:01:31 -04:00
nick brett
afd1f21d8e [UE] Prevent the creation of multiple copies of pose watch elements by the RBAN AnimGraphNode
- 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]
2023-05-23 11:14:42 -04:00
daniel holden
63ba9cb8d7 [Backout] - CL25578176
[FYI] daniel.holden
Original CL Desc
-----------------------------------------------------------------
Added experimental DeadBlending animation graph node.

#preflight 646c76414422ba05f47337a2
#rb keith.yerek, danny.chapman
#jira UE-184569

[CL 25579640 by daniel holden in ue5-main branch]
2023-05-23 07:48:35 -04:00
daniel holden
e4e1a07f7d Added experimental DeadBlending animation graph node.
#preflight 646c76414422ba05f47337a2
#rb keith.yerek, danny.chapman
#jira UE-184569

[CL 25579599 by daniel holden in ue5-main branch]
2023-05-23 07:47:40 -04:00
lucas dower
31d0124334 Added missing tooltips for animation state machine schemas
#jira UE-186241
#rb jurre.debaare, jaime.cifuentes
#preflight 646c7ddb2c0a5da0dc594dfd

[CL 25577526 by lucas dower in ue5-main branch]
2023-05-23 05:01:32 -04:00