Commit Graph

11 Commits

Author SHA1 Message Date
matt johnson
c2a816c861 AnimationBlueprintLibrary: add function for evaluating timecode attributes for the root bone in an anim sequence
A specially designated set of attribute curves can be authored on a bone
to encode timecode metadata for an animation sequence. Each attribute
encodes a different component of a complete timecode and subframe value
("TCHour", "TCMinute", "TCSecond", "TCFrame", and "TCSubframe"). The
convention is to author these attribute curves on the root bone of the animation.

This adds a function for evaluating those attributes at a particular time, and the result
is returned as a qualified frame time. If the anim sequence has an import file frame rate
specified, then that rate is used for the returned qualified frame time to more closely
match the original source of the animation. Otherwise, the sampling frame rate of the
anim sequence is used. If the root bone does not have any timecode attributes or they
otherwise cannot be evaluated (for example, because they have no keys), the function
returns false, and the qualified frame time passed by reference is unmodified.

Finally, this new function is used for the frame time hint of skeletal animation tracks in
Sequencer. Anim sequences that have these attributes authored will show the authored
timecode/frame values in the frame time hint when they are selected. This enables more
easily correlating a point in time in the anim sequence with where it came from in an
external DCC.

#rb benoit.deschenes, max.chen
#preflight 619d6f48aa4521f9e7a4e183

#ROBOMERGE-AUTHOR: matt.johnson
#ROBOMERGE-SOURCE: CL 18316998 in //UE5/Release-5.0/... via CL 18317391
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18317981 by matt johnson in ue5-release-engine-test branch]
2021-11-29 18:04:19 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
danny chapman
7db4f3162f Fix for BlendSpace analysis fails with additive animations (code from Jurre)
#jira UE-125920
#rb jurre.debaare,danny.chapman

#ROBOMERGE-AUTHOR: danny.chapman
#ROBOMERGE-SOURCE: CL 17442480 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17442486 by danny chapman in ue5-release-engine-test branch]
2021-09-07 05:02:01 -04:00
jurre debaare
fab69e6d08 Ported project specific scriptability UFunctions to Engine:
- SetPreviewSkeletalMesh to UAnimationAsset and UAnimBlueprint
- Functionality to retrieve UAnimationGraphs and UAnimationGraphNodes of a specific class from UAnimBlueprint and UAnimationGraph respectively
- Functionality for pose driver/asset scripting

#jira UE-117797
#rb Thomas.Sarkanen
#preflight 60d075e32ab218000115936a
#preflight 60d1a3eaa819040001397a52

#ROBOMERGE-SOURCE: CL 16741838 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16741845 by jurre debaare in ue5-release-engine-test branch]
2021-06-22 08:26:20 -04:00
jurre debaare
c20322f681 AnimationBlueprintLibrary::DoesBoneNameExistInternal logic incorrect
#jira UE-99277
#rb Martin.Wilson
#preflight 60cb797b9f12370001325339

#ROBOMERGE-SOURCE: CL 16707254 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16707270 by jurre debaare in ue5-release-engine-test branch]
2021-06-17 14:02:13 -04:00
jurre debaare
a48eb3909f Assert occurs when using Aim Animations from "/All/Game/Animation" folder within a Blend Space Analysis
#jira UE-116722
#fix Actually init BlendedCurve during AnimPose generation/evaluation
#rb Danny.Chapman

#ROBOMERGE-SOURCE: CL 16674947 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16674958 by jurre debaare in ue5-release-engine-test branch]
2021-06-15 12:22:31 -04:00
jurre debaare
4e347824ce User is not prompted to confirm copying anim notifies when some notifies fall outside the range of the destination anim sequence
User is not prompted to delete preexisting anim notifies from destination anim sequence when copying anim notifies from another animation
#fix changed some behaviour around CopyAnimNotifies UFunction
    - Added bool flag allowing for deleting notifies when doing the copy
    - Added log warnings to CopyNotifies, and LogAnimation category to filter when applying Anim Modifiers
#jira UE-68827, UE-68828
#rb Thomas.Sarkanen

#ROBOMERGE-SOURCE: CL 16671828 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v834-16658389)

[CL 16671835 by jurre debaare in ue5-release-engine-test branch]
2021-06-15 07:28:56 -04:00
danny chapman
343371096b Analysis for BlendSpace. Also includes:
Tweaks to the rendering of blendspaces, including separating the graph from the buttons
Context menu changes for the sample details
Changes to AnimationBlueprintLibrary and AnimPose from Jurre to help get the poses during analysis

#jira UE-114512
#rb thomas.sarkanen

#ROBOMERGE-SOURCE: CL 16356830 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v804-16311228)

[CL 16356839 by danny chapman in ue5-release-engine-test branch]
2021-05-17 15:04:09 -04:00
jurre debaare
828c5a6475 Non-unity fixes
#rb trivial
#jira none
#preflight 609c2d4e987ba00001fdbd2b

#ROBOMERGE-SOURCE: CL 16305938 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v800-16297934)

[CL 16305968 by jurre debaare in ue5-release-engine-test branch]
2021-05-12 16:49:24 -04:00
jurre debaare
4fdce40e6a - Use Skeleton's reference skeleton rather than bone containers when initializing FAnimPose
- Copy bone transforms manually using Skeleton index mapping rather than CopyFrom()
#jira none
#rb trivial

#ROBOMERGE-SOURCE: CL 16300734 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v800-16297934)

[CL 16300743 by jurre debaare in ue5-release-engine-test branch]
2021-05-12 12:09:21 -04:00
jurre debaare
d694a606af - Move AnimBlueprintLibrary to its own Module (out of AnimModifiers)
- Added FAnimPose, a script-friendly helper structure to generate/read/write evaluated anim poses
- Added API to populate AnimPose from AnimationSequenceBase, USkeleton (ref pose) and AnimBlueprint

#jira none
#rb Thomas.Sarkanen, Danny.Chapman
#preflight 609bb27f2032ee00016b253a

#ROBOMERGE-SOURCE: CL 16297653 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v799-16237190)

[CL 16297659 by jurre debaare in ue5-release-engine-test branch]
2021-05-12 07:33:41 -04:00