Commit Graph

251 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
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
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
max chen
78a0d65d90 Sequencer/Valkyrie: Disable media track, livelink track, gameplay cue track, template sequence track.
Disable event track and live link filters

Fix SupportsSequence logic so that track editors can't just blindly support a track if it's a level sequence. If it doesn't pass the permissions, the track is not supported

#preflight 62857944f239239af6b9c6be
#rb andrew.rodham

#ROBOMERGE-OWNER: max.chen
#ROBOMERGE-AUTHOR: max.chen
#ROBOMERGE-SOURCE: CL 20283972 via CL 20284129 via CL 20284318 via CL 20284323
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20304670 by max chen in ue5-main branch]
2022-05-20 18:44:58 -04:00
Geoffrey Douglas
9d08fd7b27 Move LiveLink setting "PresetSaveDir" into its own editor per project user setting
#jira UE-151459
#rb simon.therriault
#preflight 62867d0c9016c6dd898d65cf

[CL 20284407 by Geoffrey Douglas in ue5-main branch]
2022-05-19 14:31:32 -04:00
Andrew Davidson
9741042a2b Reduce use of UE_DECLARE_LWC_TYPE macro to improve Intellisense.
Moved Math forward declarations from CoreFwd.h to Math/MathFwd.h
#rb steve.robb
#preflight 62837df43c1cdc59e2b07dd5

[CL 20240602 by Andrew Davidson in ue5-main branch]
2022-05-17 07:05:35 -04:00
lauren barnes
5d5445baf1 Adding AppStyle.h includes
#rb trivial

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

[CL 20105922 by lauren barnes in ue5-main branch]
2022-05-09 13:37:21 -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
Max Chen
e209966a3c Sequencer: Back out changes to IsTrackSupported for Media and Live Link tracks.
It's ok to keep this logic for these plugin tracks because they will be filtered out by UEFN just by the fact that the plugins aren't enabled.

#preflight 6270563191629533ec2b6f79
#rb andrew.rodham

[CL 20104761 by Max Chen in ue5-main branch]
2022-05-09 12:36:37 -04:00
Geoffrey Douglas
1fda1c70bb Refactor the LiveLink component to allow each LiveLink controller in its controller map to specifiy a component to control
Deprecate the "ComponentToControl" property of the LiveLinkComponentController
Add a customization for LiveLinkControllerBase that ensures the Component picker is displayed first in the details panel
Fix the fallout from the deprecation in USDImporter plugin

#jira UE-147579
#rb simon.therriault, daniel.coelho
#preflight 62790eb24561731dbeee939d

[CL 20101534 by Geoffrey Douglas in ue5-main branch]
2022-05-09 09:01:28 -04:00
daniel coelho
b9acfaaf17 USD: Add option to enable or disable LiveLink at the stage editor;
Cleanup and prevent repeated widget recreation inside SUSDPrimInfo every time a prim is selected;
Fix duplicate call to FUsdSkelRootTranslator::UpdateComponents when creating skeletal mesh components;

#jira UETOOL-4915, UETOOL-4994, UETOOL-4995
#rb Anousack.Kitisa
#preflight 6272b00c2f6d177be3c8d4e7

[CL 20044215 by daniel coelho in ue5-main branch]
2022-05-04 13:21:36 -04:00
max chen
bf7eb82263 Sequencer/Valkyrie: Track class permissions for what tracks can be added to movie scene.
Event Track and ConsoleVariable Track are disabled. Spawn Track is also disabled, which means you can't create spawnables in Valkyrie

Added FIsTrackClassAllowed to MovieScene which is bound in MovieSceneToolsModule to look at the class viewer rules.
Fix logic in MediaTrackEditor and LiveLinkPropertyTrackEditor which was always returning Supported for level sequences.

#preflight 6270563191629533ec2b6f79
#rb andrew.rodham

#ROBOMERGE-OWNER: max.chen
#ROBOMERGE-AUTHOR: max.chen
#ROBOMERGE-SOURCE: CL 20031346 via CL 20033139 via CL 20033318 via CL 20033325
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20035188 by max chen in ue5-main branch]
2022-05-03 19:50:52 -04:00
Matt Peters
d64cf41728 AssetRegistry includes (Engine Plugins): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270563191629533ec2b6f6e

[CL 20017756 by Matt Peters in ue5-main branch]
2022-05-02 18:59:38 -04:00
michael nicolella
7839536cf5 added EBlueprintExceptionType::AbortException, when raised it sets a flag on the FFrame to signal that script execution should stop and return ASAP. It is currently only checked in the interpreter loop inside ProcessLocalScriptFunction.
- FBlueprintContextTracker::GetScriptStack is deprecated
- FBlueprintContextTracker::GetCurrentScriptStack() now returns a TArrayView so that the view of the stack remains const
- FBlueprintContextTracker::GetCurrentScriptStackWritable() added for uses that explicitly need writable access to the stack
- FBlueprintCoreDelegates::ThrowScriptException now needs a non-const FFrame to be able to set the abort flag

#rb matt.breindel julien.marchand phil.pizlo phillip.kavan
#preflight 626c710d2c01a675267ebcab

#ROBOMERGE-AUTHOR: michael.nicolella
#ROBOMERGE-SOURCE: CL 19992064 via CL 19992251 via CL 19992502 via CL 19992685
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19995787 by michael nicolella in ue5-main branch]
2022-04-30 13:03:18 -04:00
Geoffrey Douglas
9354e870cf Fix smooth engine time offset to account for very large frame time intervals
#jira UE-147817
#preflight 624cb56b4e0a8b95d07ed1d0

[CL 19632572 by Geoffrey Douglas in ue5-main branch]
2022-04-05 17:53:17 -04:00
jason walter
d609b152c8 Ensure that we transact modifications to the live link sources.
#rb simon.therriault
#jira iron-33
#preflight 623b29b6b3653cf6aff2db37

[CL 19479156 by jason walter in ue5-main branch]
2022-03-23 10:25:19 -04:00
Geoffrey Douglas
6558c3eb12 Fix crash when trying to load LL preset that fails to load
#jira UE-145907
#preflight 6230f790262232d86f68b64e
#rb simon.therriault, jeremie.roy

[CL 19394781 by Geoffrey Douglas in ue5-main branch]
2022-03-15 16:52:44 -04:00
geoffrey douglas
594dd1cadd Fix MRQ renders that are incorrectly rendered without nodal offset applied to the camera.
#jira UE-144395
#preflight 623099071e073a48a4d00b97
#rb simon.therriault, alejandro.arango
#lockdown simon.tourangeau

#ROBOMERGE-AUTHOR: geoffrey.douglas
#ROBOMERGE-SOURCE: CL 19387261 in //UE5/Release-5.0/... via CL 19388212
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19392770 by geoffrey douglas in ue5-main branch]
2022-03-15 15:51:55 -04:00
David Hibbitts
445e0d0412 Exposed ILiveLinkClient::GetSourceType to blueprints. Name changed to GetSourceTypeFromGuid to avoid conflict with existing GetSourceType function using a Source Handle
#preflight 6227bd2a7934051162f34ae5

[CL 19309941 by David Hibbitts in ue5-main branch]
2022-03-08 15:39:16 -05:00
simon therriault
3b95d8f46f - Adding cvar to easily disable all LiveLink component evaluation of their subject to prevent path tracing invalidation
#rb alejandro.arango
#jira UE-143951
#preflight 621ff205f134125ae0b4d4dc
#lockdown alejandro.arango

#ROBOMERGE-AUTHOR: simon.therriault
#ROBOMERGE-SOURCE: CL 19236286 in //UE5/Release-5.0/... via CL 19236748
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19237393 by simon therriault in ue5-main branch]
2022-03-02 22:12:00 -05:00
geoffrey douglas
18d01345be [LiveLink] Do not update the LiveLink component controller's "component to control" if the existing selection is valid.
#jira UE-143756
#rb simon.therriault
#preflight 6217e5a448518fd8cbdeaa89

#ROBOMERGE-AUTHOR: geoffrey.douglas
#ROBOMERGE-SOURCE: CL 19127478 in //UE5/Release-5.0/... via CL 19127844
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19154621 by geoffrey douglas in ue5-main branch]
2022-02-25 15:20:47 -05:00
marc audy
cff01aa9fa Added support for native FProperty setters and getters.
Setters and getters are native functions called by FProperties when setting property values with *_InContainer functions.
Setters and getter function names can be manually specified with Setter = Func and Getter = Func keywords inside of UPROEPRTY macro but they will also be automatically parsed if the name is not explicitly specified if the setter or getter function name matches SetPropertyName and GetPropertyName pattern.
The latter behavior can be disabled in UHT's DefaultEngine.ini by setting AutomaticSettersAndGetters=False.
ImportText and ExportTextItem functions have been deprecated and should be replaced with *_InContainer or *_Direct variants.

#rb Steve.Robb
#preflight 6210a377a83e0bcefd03d9e1

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19070318 via CL 19098059 via CL 19104650 via CL 19104661 via CL 19110012
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19147839 by marc audy in ue5-main branch]
2022-02-25 10:39:39 -05:00
simon therriault
534e4759c8 - Rollback LiveLink MessageBus version to support new backward compabitility with older UE
#rb geoffrey.douglas
#jira UE-142171
#preflight 620551fba155a4cddac2ac71
#lockdown alejandro.arango

#ROBOMERGE-AUTHOR: simon.therriault
#ROBOMERGE-SOURCE: CL 18942711 in //UE5/Release-5.0/... via CL 18942890 via CL 18943150
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18943158 by simon therriault in ue5-main branch]
2022-02-10 16:30:20 -05:00