Commit Graph

117 Commits

Author SHA1 Message Date
roland munguia
3210b2cd36 Fixed crash when batch removing multiple animation modifiers from a selection of anim sequences and having a animation modifiers only affect a subset of all the selected anim sequences.
#rnx
#rb jose.villarroel, aaron.cox

[CL 27924231 by roland munguia in ue5-main branch]
2023-09-15 14:02:15 -04:00
aaron cox
93a1637736 Fix loctext errors in new "Remove Modifier" feature
[REVIEW] Roland.Munguia

[CL 27881371 by aaron cox in ue5-main branch]
2023-09-14 12:01:29 -04:00
roland munguia
8c921bf410 Add support for removing (and optionally also reverting) Animation Modifier(s) from a selection of Anim Sequences in the content browser.
- Added `SRemoveAnimationModifierContentBrowserWindow` widget.
- Added `ShowRemoveAnimationModifierWindow` virtual method to `IAnimationModifiersModule`.
- Added `OnSelectionChanged` delegate to SModifierListView.
- Fixed AnimationModifiersModule not properly unsubscribing its delegates bound to` UObject::FAssetRegistryTag::OnGetExtraObjectTags`.

[RN] minor

[CL 27857700 by roland munguia in ue5-main branch]
2023-09-13 18:50:59 -04:00
steve robb
51f3ea53ae Removed ChooseClass.h includes.
#rb trivial

[CL 27823723 by steve robb in ue5-main branch]
2023-09-13 05:43:01 -04:00
jurre debaare
47c25d1798 Add mechanism to ensure AnimationModifiersAssetUserData is always added/part of an AnimSequence, currently it would only be created when opening it in the AnimationEditor
Add script API to AssetUserData interface to check/add user-data (can be used to patch up existing content)
#rb Thomas.Sarkanen, Phillip.Kavan

[CL 27595813 by jurre debaare in ue5-main branch]
2023-09-05 10:22:32 -04:00
jurre debaare
582c8d2fba Animation Modifier improvements
- ensure that any _skeleton_ modifiers as OnPostOwnerChange also get applied when a UAnimSequence is edited
#rb Thomas.Sarkanen

[CL 27271261 by jurre debaare in ue5-main branch]
2023-08-22 11:04:24 -04:00
euan carmichael
2042b1ace8 Removed experimental tag from UAnimationModifier
#jira UE-192216
#rb Jurre.deBarre

[CL 26905632 by euan carmichael in ue5-main branch]
2023-08-07 19:44:11 -04:00
jurre debaare
815af0710f Applying only FootstepEffectTagModifier or FootFXAnimModifier and undoing the apply creates None notifies
#fix re-introduce marking AnimSequence as modified when applying animation-modifier(s), removed in CL 23191977
#jira UE-188597
#rb Thomas.Sarkanen

[CL 26771279 by jurre debaare in ue5-main branch]
2023-08-02 10:19:24 -04:00
graeme thornton
59c57ecd88 Remove redundant scope lock with a conflicting name, caused by robomerge
[FYI] keaton.stewart

[CL 25966406 by graeme thornton in ue5-main branch]
2023-06-13 18:27:52 -04:00
henrik karlsson
f4449d5f25 [Fortnite]
* Fixed linux compile errors

[CL 25965335 by henrik karlsson in ue5-main branch]
2023-06-13 17:56:18 -04:00
rob perren
136f490b47 Anim Modifiers - Can't add multiple modifiers to multiple animation sequences without the engine crashing
[REVIEW] [at]jurre.debaare
#fix prevent deadlocking when trying to cancel async animation compression task while holding onto evaluation/modification lock on current thread
#misc ensure that apply an animation modifier holds aforementioned lock
#misc add bracket to MotionExtractorModifier
#rb Thomas.Sarkanen

#ushell-cherrypick of 25447073 by Jurre.deBaare

#localization none
#tests tested cook on project that was timing out to confirm this fixed the issue

[CL 25964700 by rob perren in ue5-main branch]
2023-06-13 17:35:19 -04:00
jurre debaare
1c7700a71f Move Evaluation lock to higher level, as transacting the Skeleton will regenerate its ReferenceSkeleton
#jira UE-184438
#rb trivial
#preflight 64625b5a3a76d5a567fe900d

[CL 25494942 by jurre debaare in ue5-main branch]
2023-05-16 15:28:57 -04:00
bryan sefcik
da92084a12 Optimized out more private modules includes and dependencies.
#preflight 64627c382965f6ea8ea83bd6

[CL 25479683 by bryan sefcik in ue5-main branch]
2023-05-15 16:26:12 -04:00
jurre debaare
a3e8a1d2fc Anim Modifiers - Can't add multiple modifiers to multiple animation sequences without the engine crashing
#jira  UE-184438
#fix prevent deadlocking when trying to cancel async animation compression task while holding onto evaluation/modification lock on current thread
#misc ensure that apply an animation modifier holds aforementioned lock
#misc add bracket to MotionExtractorModifier
#preflight 645e19df5b775f11fba5e0fe
#rb Thomas.Sarkanen

[CL 25448534 by jurre debaare in ue5-main branch]
2023-05-12 10:19:37 -04:00
jamie dale
c6b3e9ee21 Use the FMessageDialog overloads that pass the optional title by-value
#jira
#rb none
#rnx

[CL 25062672 by jamie dale in ue5-main branch]
2023-04-15 20:49:52 -04:00
jamie dale
933348f856 Use the FMessageDialog overloads that pass the optional title by-value
#jira
#rb none
#rnx

[CL 25062589 by jamie dale in ue5-main branch]
2023-04-15 19:49:32 -04:00
Jurre deBaare
fb5bc496e0 Fix infinite recursion due to bReapplyPostOwnerChange flag being set on an Anim Modifier instance
#jira none
#rb samuele.rigamonti
#preflight 63ea2a1be92f139c512ff349

[CL 24172726 by Jurre deBaare in ue5-main branch]
2023-02-13 07:21:54 -05:00
Jurre deBaare
458f97b453 Animation Modifier : Improved Error Handling
- Dll Export the FApplyModifiersScope object to allow batch apply modifiers by script (Python or Blueprint Scripted Actions)
- New API to suppress warning or error dialogs when applying modifiers from script
- Fix : 'YesToAll' 'NoToAll' not respected when both error and warning are throwed from same modifier class

Contributed by Yupeng.Zhang

#rb Jurre.deBaare
#preflight 63c539422e714f64add554e5
#jira UE-172660

[CL 23728150 by Jurre deBaare in ue5-main branch]
2023-01-16 07:04:54 -05:00
Jurre deBaare
31f1b097fd Animation Compression
- Added new compression and 'compiling' API/path
  * Relies on newer DDC API
  * Only fetches compressible data when data is not found in DDC
  * Fetching data happens off the GT now (including Additive animation)
- Deprecated and replace AnimSequence API around compression
** AnimStreamable still relies on old, synchronous, compression path **

IAnimationDataModel
- Removed bone track data being stored as FBoneAnimationTrack
- Bone animation can now only be referenced by Name (not track index anymore)
- Deprecated any API relying on FBoneAnimationTrack
- Added API to retrieve FTransform(s) for given frame(s) with provided bone name
- Added API to lock model against modifications during evaluation (required for non-racing off-GT evaluation)

Animation Sequence
- Frame-rate is now stored on a per-platform basis, allowing for future replacement of frame-stripping (editing property is disabled for now)
- Now allows for storing _transient_ per-platform compressed animation data (required for multi-platform cook)

PerPlatformProperties
- Added per-platform FFrameRate implementation

#preflight 63999f102540a78d2778adb7
#rb Thomas.Sarkanen, Nicholas.Frechette, Devin.Doucette
#fyi Zousar.Shaker

[CL 23510521 by Jurre deBaare in ue5-main branch]
2022-12-14 05:56:08 -05:00
jurre debaare
a69fd75b91 Fixup incorrect merge (see CL 23247896)
#jira none
#rb none

[CL 23248746 by jurre debaare in ue5-main branch]
2022-11-23 09:11:07 -05:00
jurre debaare
2592800cee UEFN - Users are able to apply Animation Modifiers via the right-click context menu
#rb Thomas.Sarkanen
#preflight 637e03952a05dabce9c11f0c

[CL 23248743 by jurre debaare in ue5-main branch]
2022-11-23 09:10:53 -05:00
Jurre deBaare
2448a4f237 Static analysis fixes
#jira none
#rb trivial
#preflight 637df3e2f514e1ded95e3b4c

[CL 23247071 by Jurre deBaare in ue5-main branch]
2022-11-23 05:38:28 -05:00
henrik karlsson
b5164ac775 Fixes to make modules compile with IWYU. We've added to IWYU toolchain so it compiles "orphaned" headers which does not have a owning cpp file. This identified lots of headers that couldn't be compiled by themselves (or if they were to included first)
Change consist of only forward declaration and additional includes

#preflight 63789c1de30d438849c48188
#rb none

[CL 23218412 by henrik karlsson in ue5-main branch]
2022-11-21 03:22:23 -05:00
Jurre deBaare
3252094e90 Fixup unacceptable string wording
#jira none
#preflight 63776906815e4b9b75413668

[CL 23192158 by Jurre deBaare in ue5-main branch]
2022-11-18 06:21:54 -05:00
Jurre deBaare
a5305f76a3 Contributed by Yupeng.Zhang from The Coalition:
Animation Modifier : Fix Modifier on Skeleton
Transfered the ownership of 'PreviouslyAppliedModifier' from an animation modifier instance to the animation sequence being applied.
This solved the following issue:
- Modifier on Skeleton cause USkeleton dirtied everytime the modifier is applied to an animation sequence.
- Modifier on Skeleton cannot be re-apply or reverted correctly.
- CanRevert & OutOfDate status for Modifier on Skeleton was not reflect the true status of all animation sequences referencing that skeleton.

- CurrentAnimSequence/CurrentSkeleton was not set on OnRevert()
- IAnimationDataController::FScopedBracket was not open on OnRevert() before re-apply modifier
- Stateful animation modifier can now be reverted correctly (Applied modifier instance is nolonger reverted after OnApply call)

#preflight 63775e0ff514e1ded99ef095

[CL 23191977 by Jurre deBaare in ue5-main branch]
2022-11-18 05:35:47 -05:00