Commit Graph

1552 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
benoit gadreau
34f893a672 reset hierachy when disactivating the dialog window as we don't need to update the widget anymore
#jira UE-153943
#rb helge.mathee
#preflight 6294e89891004dd61c80ae98

#ROBOMERGE-AUTHOR: benoit.gadreau
#ROBOMERGE-SOURCE: CL 20434814 in //UE5/Release-5.0/... via CL 20435029
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20448478 by benoit gadreau in ue5-main branch]
2022-06-01 03:45:43 -04:00
Mike Zyracki
8202bf72fd Sequencer: Space Switches, Baking fix again, error got wiped over.
#jira UE-148929
#rb na
#trivial
#preflight 629672eb88749bbb83a2ccf9

[CL 20444215 by Mike Zyracki in ue5-main branch]
2022-05-31 19:02:12 -04:00
jack cai
e8f38eb3ea ControlRig: Reverted a previous change that parented rigvm memory objects to the ControlRigBP asset object because the engine no longer supports uobject as uclass outer, only upackage can be the outer of an uclass.
Also added UControlRigBlueprint::GetPreloadDependencies to ensure memory classes are loaded before ControlRigBP during cooking.

#jira UE-152546
#rb helge.mathee sara.schvartzman halfdan.ingvarsson
#fyi benoit.gadreau
#preflight https://horde.devtools.epicgames.com/job/62945fd71154108e88cc4c35

[CL 20442350 by jack cai in ue5-main branch]
2022-05-31 16:55:43 -04:00
Helge Mathee
40dbac202b RigVM: Restructure entry invocation for nativized VMs
#rb sara.schvartzman
#jira UE-153498
#preflight https://horde.devtools.epicgames.com/job/62962b08fe779f23c8e4d093

[CL 20441428 by Helge Mathee in ue5-main branch]
2022-05-31 16:18:09 -04:00
Mike Zyracki
3cd3e1b510 Sequencer: Snapper: Clear snapper objects when sub sequence changes
#jira UE-155284
#rb na
#preflight 6296614e88749bbb839e727c
#trivial

[CL 20440506 by Mike Zyracki in ue5-main branch]
2022-05-31 15:18:54 -04:00
Helge Mathee
0e6bdb6dd5 Control Rig: Maintain skip flag for selection once it's been set
#rb na
#jira UE-154076
#preflight skip

[CL 20435604 by Helge Mathee in ue5-main branch]
2022-05-31 07:53:00 -04:00
Helge Mathee
326b9eae88 Control Rig: Rename update and inverse to forwards and backwards solve
#rb sara.schvartzman
#jira UE-153498
#preflight https://horde.devtools.epicgames.com/job/6295fd1b95336ad2bfb015f4

[CL 20435454 by Helge Mathee in ue5-main branch]
2022-05-31 07:41:10 -04:00
benoit gadreau
0465f116f8 Constraints in Sequencer : Improved constraints baking and properties changes
#jira none
#rb none
#preflight 6295df42d57da28cc8ef4f14

[CL 20435145 by benoit gadreau in ue5-main branch]
2022-05-31 06:23:44 -04:00
Helge Mathee
6520c809a9 Control Rig: backend work for support for multi graph
#rb benoit.gadreau
#jira UE-153497
#preflight https://horde.devtools.epicgames.com/job/6294be4e2e34c2e487b13394

[CL 20434781 by Helge Mathee in ue5-main branch]
2022-05-31 04:27:20 -04:00
kiaran ritchie
4c47b84eec Adding memory profiling scopes to IK Rig and FBIK
#rb halfdan.ingvarsson
#JIRA https://jira.it.epicgames.com/browse/UE-152816
#preflight 628e5aee2c7cb2d10d6e11c9

[CL 20431533 by kiaran ritchie in ue5-main branch]
2022-05-30 12:08:12 -04:00
benoit gadreau
3f70fd88dc Fixed use of possible null struct
note: nodes register a FPerClassInfo with a null ScriptStruct

#jira UE-155163
#rb helge.mathee
#preflight 6294a5cce460377418dd6238

[CL 20429818 by benoit gadreau in ue5-main branch]
2022-05-30 07:23:46 -04:00
geoff evans
7631f47e92 Trace: Defer FTraceAuxiliary::Start to make way for default trace channels to be enabled.
Right now GameplayInsights and NetworkPredictionInsights start a Trace connection directly in the default StartupModule pathway. This shouldn't happen by default because if Start() is called UnrealTraceServer.exe will start logging to a trace file. This in turn will consume disk space on every run of Editor.

GameplayInsights defers Start() until AnimationInsights or RewindDebugger is shown on screen.

NetworkPredictionInsights requires a command line param, -NPTrace, be specified.

#rnd
#rb Keith.Yerex
[FYI] Mattias.Hornlund
#jira UE-151707
#preflight 628fed678c077c0d6626bfaf

#ROBOMERGE-AUTHOR: geoff.evans
#ROBOMERGE-SOURCE: CL 20393718 via CL 20394237 via CL 20394437
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20398644 by geoff evans in ue5-main branch]
2022-05-27 16:48:46 -04:00
Mike Zyracki
b3b9087f35 Control Rig: Space Switching: Bring back space switching fix for multi control rigs. This got removed by mistake by a Constraint submission CL 20221291
#fyi benoit.gadreau
#jira UE-148929
#jira UE-152919
#rb na
#preflight 62900c940336e9efd9d125ca

[CL 20387890 by Mike Zyracki in ue5-main branch]
2022-05-26 19:39:46 -04:00
mike zyracki
5a634dd83a Sequencer: Anim Tools: Don't enter pivot mode if the ed mode isn't valid, can cause issues the tools framework, including subsequent ensures and bad states.
#jira UE-150727
#preflight 626c3a9cce3959ce8feaef03
#lockdown laurent.delayen
#rb max.chen

#ROBOMERGE-AUTHOR: mike.zyracki
#ROBOMERGE-SOURCE: CL 20383070 in //UE5/Release-5.0/... via CL 20384116
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20386409 by mike zyracki in ue5-main branch]
2022-05-26 17:57:19 -04:00
mike zyracki
8794ef7b9e Sequencer: Anim Tools: Most new anim tools, pivot, motion trails, etc.. don't work in sub sequences, times could be wrong and even worse bindings not found since not using the root to local transform to calculate time correctly.
#jira UE-149316
#rb max.chen
#preflight 62827fc2734d065770304796
#lockdown laurent.delayen

#ROBOMERGE-AUTHOR: mike.zyracki
#ROBOMERGE-SOURCE: CL 20383029 in //UE5/Release-5.0/... via CL 20384102
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20386404 by mike zyracki in ue5-main branch]
2022-05-26 17:57:03 -04:00
Geoffrey Douglas
7d3985da84 Centralize application of nodal offset to LensComponent, removing all references to nodal offset from the LiveLink camera controller
#jira UE-153107
#jira UE-146118
#rb simon.therriault
#preflight 628fe02174630984fd4eb26a

[CL 20385271 by Geoffrey Douglas in ue5-main branch]
2022-05-26 16:49:09 -04:00
Geoffrey Douglas
0c35a25991 Fix an attempt to load the TimeManagement module during shutdown phase.
#jira UE-154762
#rb simon.therriault
#preflight 628fe091e17a02240de0840e

[CL 20385193 by Geoffrey Douglas in ue5-main branch]
2022-05-26 16:47:14 -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
Max Chen
5564455761 Sequencer: Follow up to filter commands - Add binding counts to track filter commands since they could be destroyed after a new track filter is generated
#jira UE-152932
#rb mike.zyracki
#preflight 628f1df69a2b52f7c70efbbd

[CL 20379912 by Max Chen in ue5-main branch]
2022-05-26 11:37:41 -04:00
jack cai
b08f5d8519 ControlRig Component: Use tick prerequistie to ensure mapped mesh components tick after the control rig component to avoid double ticking the SKM componet in the CR component. It was causing motion vectors to be zeroed and rendering artifacts with TSR/MotionBlur
#jira UE-153914
#rb helge.mathee sara.schvartzman
#preflight https://horde.devtools.epicgames.com/job/628dcdf12f2409bc1e1141bd

[CL 20367722 by jack cai in ue5-main branch]
2022-05-25 13:27:34 -04:00
Max Chen
1a68478712 Sequencer: Follow up to expose bind filter commands to curve editor bindings
#jira UE-152932
#rb mike.zyracki
#preflight 628da2d22f2409bc1e0bd118

[CL 20367362 by Max Chen in ue5-main branch]
2022-05-25 13:05:21 -04:00
kiaran ritchie
db3532c551 IK Retargeter, fixed bug bones remain visible but not editable when playing animation while in edit mode.
Also fixes bug, animation resumes playing when going from "Show Retarget Pose" mode  back to "Edit Pose" mode.

#rb halfdan.ingvarsson
#JIRA https://jira.it.epicgames.com/browse/UE-151608, https://jira.it.epicgames.com/browse/UE-151610
#preflight 628d3e986c4351e372921d74

[CL 20365448 by kiaran ritchie in ue5-main branch]
2022-05-25 11:33:20 -04:00
Max Chen
0167d4ea0f Sequencer: MVVM2 branch and Layer Bars
Copying //Tasks/UE5/Dev-SequencerMVVM2 to Main (//UE5/Main) @20364093

#preflight 628866dfb94f739b152c1e29
#preflight 628866e4585e8f793ee80943
#rb ludovic.chabant, andrew.rodham
#fyi ludovic.chabant, andrew.rodham, andrew.porter
#jira UE-105322

[CL 20364493 by Max Chen in ue5-main branch]
2022-05-25 10:39:33 -04:00
benoit gadreau
4c316a8724 Reset bake settings
#jira UE-153952
#rb helge.mathee
#preflight 628e07f5af7a2e956bb635ee

[CL 20362518 by benoit gadreau in ue5-main branch]
2022-05-25 07:49:41 -04:00