Commit Graph

241 Commits

Author SHA1 Message Date
robert manuszewski
d1443992e1 Deprecating ANY_PACKAGE.
This change consists of multiple changes:

Core:
- Deprecation of ANY_PACKAGE macro. Added ANY_PACKAGE_DEPRECATED macro which can still be used for backwards compatibility purposes (only used in CoreUObject)
- Deprecation of StaticFindObjectFast* functions that take bAnyPackage parameter
- Added UStruct::GetStructPathName function that returns FTopLevelAssetPath representing the path name (package + object FName, super quick compared to UObject::GetPathName) + wrapper UClass::GetClassPathName to make it look better when used with UClasses
- Added (Static)FindFirstObject* functions that find a first object given its Name (no Outer). These functions are used in places I consider valid to do global UObject (UClass) lookups like parsing command line parameters / checking for unique object names
- Added static UClass::TryFindType function which serves a similar purpose as FindFirstObject however it's going to throw a warning (with a callstack / maybe ensure in the future?) if short class name is provided. This function is used  in places that used to use short class names but now should have been converted to use path names to catch any potential regressions and or edge cases I missed.
- Added static UClass::TryConvertShortNameToPathName utility function
- Added static UClass::TryFixShortClassNameExportPath utility function
- Object text export paths will now also include class path (Texture2D'/Game/Textures/Grass.Grass' -> /Script/Engine.Texture2D'/Game/Textures/Grass.Grass')
- All places that manually generated object export paths for objects will now use FObjectPropertyBase::GetExportPath
- Added a new startup test that checks for short type names in UClass/FProperty MetaData values

AssetRegistry:
- Deprecated any member variables (FAssetData / FARFilter) or functions that use FNames to represent class names and replaced them with FTopLevelAssetPath
- Added new member variables and new function overloads that use FTopLevelAssetPath to represent class names
- This also applies to a few other modules' APIs to match AssetRegistry changes

Everything else:
- Updated code that used ANY_PACKAGE (depending on the use case) to use FindObject(nullptr, PathToObject), UClass::TryFindType (used when path name is expected, warns if it's a short name) or FindFirstObject (usually for finding types based on user input but there's been a few legitimate use cases not related to user input)
- Updated code that used AssetRegistry API to use FTopLevelAssetPaths and USomeClass::StaticClass()->GetClassPathName() instead of GetFName()
- Updated meta data and hardcoded FindObject(ANY_PACKAGE, "EEnumNameOrClassName") calls to use path names

#jira UE-99463
#rb many.people
[FYI] Marcus.Wassmer
#preflight 629248ec2256738f75de9b32

#codereviewnumbers 20320742, 20320791, 20320799, 20320756, 20320809, 20320830, 20320840, 20320846, 20320851, 20320863, 20320780, 20320765, 20320876, 20320786

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20430220 via CL 20433854 via CL 20435474 via CL 20435484
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20448496 by robert manuszewski in ue5-main branch]
2022-06-01 03:46:59 -04:00
braeden shosa
75f1889658 PoseSearch: Rename FDatabaseEditorToolkit to FDatabaseEditor
#preflight 629676ad261e39f6206a9a40
#rb cesar.castro

[CL 20443872 by braeden shosa in ue5-main branch]
2022-05-31 18:38:21 -04:00
Aaron Cox
a8e84c3393 Fix crash when using Pose Matching on Sequence Players ("Start From Matching Pose" option). Default to brute force search when there's no database.
#review-20439958 @Braeden.Shosa, @Cesar.Castro, @Samuele.Rigamonti
#preflight 629664f09d75300f41b91b5f

[CL 20440381 by Aaron Cox in ue5-main branch]
2022-05-31 15:07:47 -04:00
eric mcdaniel
7f13aee505 Fix for uninitialized FPoseSearchFeatureDesc member blocking QAGame cooks
- issue introduced with CL 20385207

#rb none, trivial
#jira none
#preflight 6290e945936293d61a7e37a7
#fyi braeden.shosa

[CL 20393756 by eric mcdaniel in ue5-main branch]
2022-05-27 11:22:07 -04:00
samuele rigamonti
484b910575 motion matching: performing searches with KDTree in PCA space
#review-20269205 @aaron.cox, @braeden.shosa, @cesar.castro
#jira UE-134406
#preflight 628ffaff4f63120d8ef2d499

[CL 20386946 by samuele rigamonti in ue5-main branch]
2022-05-26 18:30:55 -04:00
braeden shosa
0d6e5e8d3e PoseSearch: Extensible channels
Schemas are now composed of user defined channels. Channels are responsible for describing their features to the schema, indexing assets, query construction, and debug drawing. Existing schemas are migrated to the default pose or trajectory channel implementations

This change will cause some minor data loss. Schemas will automatically migrate, but database default weights and per-group weights will have to be setup again. The weights structure is now composed of an array of channel weight params rather than hard-coded pose and trajectory weights. The number of entries in the weights array is expected to mirror the number of channels setup on a Schema, but there is no UI feedback about that yet and the weights system will fallback to defaults when there aren't sufficient entries in the array.

#rb cesar.castro,samuele.rigamonti
#preflight 628fe0aee73f637548edf52d

[CL 20385207 by braeden shosa in ue5-main branch]
2022-05-26 16:47:30 -04:00
Leon Huang
19877e39c5 Fix for duplicate localization key warnings and missing localization defines/undefines in various files.
#rnx
#rb: Vincent.Gauthier
#jira: UE-151614
#preflight: 628fc4a98c23e52ef0fdfa7d

[CL 20384450 by Leon Huang in ue5-main branch]
2022-05-26 16:11:10 -04:00
fernando coello
a60d1b26f5 Simplified motion warping framework by removing bInLocalSpace option. Root motion is now always warped in mesh space.
#review-20355245 @jose.villarroel @aaron.cox
#fyi @jaren.peterson
#preflight 628e7daafe6f6d97bc13f672
#jira none

[CL 20370981 by fernando coello in ue5-main branch]
2022-05-25 16:33:38 -04:00
fernando coello
f8a1685dcf Contextual Anim (WIP): Added support for multiple sections and renamed Variants to AnimSet and AlignmentSection to AnimSetPivotDefinition
#review-20315406 @jose.villarroel
#fyi @aaron.cox
#jira none
#preflight 628e758f82597362d1077aa2

[CL 20369561 by fernando coello in ue5-main branch]
2022-05-25 14:59:07 -04:00
robert manuszewski
f8a812a32f Converting hardcoded short class/enum names to pathnames ahead of ANY_PACKAGE removal
#rb trivial
#jira UE-99463
#preflight 6288fd998828ea88c8aef3d0

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20314896 via CL 20314897 via CL 20314903 via CL 20314904
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20315214 by robert manuszewski in ue5-main branch]
2022-05-22 10:30:02 -04:00
ionut matasaru
e5a08d1eb4 [Insights] Added LLM_SCOPEs to each analyzer in TraceServices and in few Insights plugins (in an effort to reduce the Untagged allocations).
#jira UE-147172
#rb Johan.Berg
#preflight 6284c4ecf239239af6738fb4

[CL 20277513 by ionut matasaru in ue5-main branch]
2022-05-19 05:03:20 -04:00
Aaron Cox
4625fd413a Follow up to CL#20250517 to update more locations to the new Pose Search asset names. I'm probably still missing a couple spots.
#review-20251971 @Braeden.Shosa, @Cesar.Castro, @Samuele.Rigamonti
#preflight 6285649e660b4a15be680c24

[CL 20268965 by Aaron Cox in ue5-main branch]
2022-05-18 17:37:26 -04:00
cesar castro
3a0cd48ebe PoseSearch - Database Editor - fixed editor crash when using the editor with an empty pose search database
#rb aaron.cox
#preflight

[CL 20253498 by cesar castro in ue5-main branch]
2022-05-17 19:22:35 -04:00
Aaron Cox
5ec8413aa9 Expose Pose Search assets under "Animation\Motion Matching" in the Content Browser's context menu. We previously had to go through "Miscellaneous\Data Asset" to create them.
#review-20249919 @Braeden.Shosa, @Cesar.Castro, @Samuele.Rigamonti
#fyi Paddy.Walker
#preflight 6284052df536779152cdfb5d

[CL 20250517 by Aaron Cox in ue5-main branch]
2022-05-17 16:44:55 -04:00
Keith Yerex
75b9cfc188 Filtering for Pose Search entries in Rewind Debugger timeline
#preflight 6282cbffc57a894cf69fd76b

[CL 20233995 by Keith Yerex in ue5-main branch]
2022-05-16 18:31:31 -04:00
cesar castro
17065f7b80 Pose search: improvements to DDC and runtime logic
- fixed ddc issue with cooking and running packaged builds
- fixed crash when the schema changes while the database is being searched
#rb aaron.cox
#preflight 627d9acf545ef59331f032b0

[CL 20174255 by cesar castro in ue5-main branch]
2022-05-12 19:53:39 -04:00
fernando coello
0420123905 Contextual Anim Editor (WIP): Updated new variant popup to use AnimSequenceBase instead of Montage.
#review-20170217 trivial
#preflight none
#fyi @aaron.cox

[CL 20170214 by fernando coello in ue5-main branch]
2022-05-12 16:19:32 -04:00
fernando coello
9c3ca15166 Contextual Anim Editor (WIP): Refactored binding mechanism to support external data and extended blueprint interface
#review-20063449 @jose.villarroel @aaron.cox
#jira none
#preflight 627d62b314419e106f782594

[CL 20170094 by fernando coello in ue5-main branch]
2022-05-12 16:14:08 -04:00
keith yerex
e3e937e801 undo changes to PoseSearchDebugger for Rewind Debugger Timelines
#ROBOMERGE-AUTHOR: keith.yerex
#ROBOMERGE-SOURCE: CL 20154629 via CL 20154693 via CL 20154836
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20157345 by keith yerex in ue5-main branch]
2022-05-11 22:01:14 -04:00
keith yerex
d8cb0c9c81 Rewind Debugger timelines
#rb thomas.sarkanen
#preflight 627be6e9a85e625d6f6da85a

#ROBOMERGE-OWNER: keith.yerex
#ROBOMERGE-AUTHOR: keith.yerex
#ROBOMERGE-SOURCE: CL 20151054 via CL 20152640 via CL 20153506
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20157277 by keith yerex in ue5-main branch]
2022-05-11 21:58:41 -04:00
cesar castro
356e53a1ef PoseSearch - Database editor update
- added scrubbing timeline to preview
- clicked actors are highlighted in the asset tree
#rb aaron.cox
#preflight 627c2cdc2f34cb1d4c2cb8f8

[CL 20152037 by cesar castro in ue5-main branch]
2022-05-11 18:24:12 -04:00
lauren barnes
ae96704e9c Removing EditorStyleSet.h includes
#rb trivial

#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20080050 via CL 20080336
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20106472 by lauren barnes in ue5-main branch]
2022-05-09 13:56:34 -04:00
lauren barnes
4b82e918fa Replacing legacy EditorStyle calls with AppStyle
#rb header and class name replacement

#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20078276 via CL 20078825
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20106316 by lauren barnes in ue5-main branch]
2022-05-09 13:51:26 -04:00
lauren barnes
00c86da7f5 Adding AppStyle.h includes
#rb trivial

#ROBOMERGE-OWNER: lauren.barnes
#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20072361 via CL 20072577 via CL 20072706
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20105734 by lauren barnes in ue5-main branch]
2022-05-09 13:31:23 -04:00
Lauren Barnes
6248f8d412 Replacing legacy EditorStyle calls with AppStyle
#preflight 6272a74d2f6d177be3c6fdda
#rb Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: Lauren.Barnes
#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20057269 via CL 20070159 via CL 20072035 via CL 20072203
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
#ROBOMERGE-CONFLICT from-shelf

[CL 20105363 by Lauren Barnes in ue5-main branch]
2022-05-09 13:12:28 -04:00