Commit Graph

78 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
Ben Marsh
ab142f400f Horde: Use a parsable format for localization errors, allowing us to link files for build health issues.
#fyi leon.huang
#preflight 62912405f6625a3541a0b1ea

[CL 20400528 by Ben Marsh in ue5-main branch]
2022-05-27 18:27:52 -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
Leon Huang
55f9f49684 Localization conflict reports can now be output as .csv files.
- Introduced EConflictReportFormat to determine the output format of the conflicts report.
- Updated the localization .ini files to specify the requested output format.
#jira: UE-143696
#rb: Jamie.Dale, Vincent.Gauthier
#preflight: 62573db00b7c7f0f38c6405b

[CL 19746764 by Leon Huang in ue5-main branch]
2022-04-13 18:08:19 -04:00
Josh Adams
c564febc2f - Added FDDPIRegistry::GetAllSortedPlaformInfos which returns fake and disabled platforms, while GetSortedPlatformInfos will now only return "concrete/usable" platforms (independent of SDK status, etc)
- Changed the SupportedPlatforms dialog to show all DDPI platforms, not just the ones that are compiled in currently
#rb chris.waters
#preflight 622bc87546679d56c32545cd

[CL 19361979 by Josh Adams in ue5-main branch]
2022-03-11 17:28:48 -05:00
nick darnell
61e3e22f9a Lyra/Localization - Adding some comments to the generated localization files so that people don't accidentally hand edit them thinking they are the source.
[REVIEW] [at]Jamie.Dale
#jira none
#preflight skip

#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 18643354 in //UE5/Release-5.0/... via CL 18644232 via CL 18644501
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v900-18638592)

[CL 18647511 by nick darnell in ue5-main branch]
2022-01-18 16:05:07 -05:00
aurel cordonnier
34f55d3a4a Merge from Release-Engine-Test @ 17946149 to UE5/Main
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17949667 by aurel cordonnier in ue5-main branch]
2021-10-27 15:14:40 -04:00
Marc Audy
01b7c9f4f5 Merge UE5/RES @ 15958325 to UE5/Main
This represents UE4/Main @ 15913390 and Dev-PerfTest @ 15913304

[CL 15958515 by Marc Audy in ue5-main branch]
2021-04-08 14:32:07 -04:00
Zousar Shaker
3b4c8fc1c5 Automated wrapped object pointer upgrade for Engine + ShooterGame + ShooterGame referenced plugins
#rb none

[CL 15224650 by Zousar Shaker in ue5-main branch]
2021-01-27 17:40:25 -04:00
Marc Audy
a7f9391231 Merge UE5/Release-Engine-Staging @ 14811410 to UE5/Main
This represents UE4/Main @ 14768117

For ReleaseObjectVersion.h
#lockdown Marcus.Wassmer

[CL 14811440 by Marc Audy in ue5-main branch]
2020-11-24 18:42:39 -04:00
Marc Audy
68150e0be7 Merge UE5/Release-Engine-Staging to UE5/Main @ 14611496
This represents UE4/Main @ 14594913

[CL 14612291 by Marc Audy in ue5-main branch]
2020-10-29 13:38:15 -04:00
Arciel Rekman
1c1234152f Remove unused private fields - Localization & Docs
#rb Jamie.Dale
#review-14242505 @Jamie.Dale
#jira none

[CL 14244822 by Arciel Rekman in ue5-main branch]
2020-09-02 11:07:37 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
Josh Adams
5f27a8dbcb [Upgrade Notes Critical! Licensee build scripts and DeviceProfiles may need updating]
- Formalizing all TargetPlatforms to have a Client version, rename WindowsNoEditor to Windows, and removing DDPI specification of TargetPlatforms, and generate them programmatically
- Updated names DeviceProfiles and Build scripts, as above
- Some PlatformInfo class cleanup
- Added a TNonDesktopTargetPlatformBase class to make most TargetPlatforms simpler
- Added "No Compiled Support" to the Turnkey LaunchOn menu when the TargetPlatforms aren't compiled in (to show that even if you install an SDK, you will need to compile before you can LaunchOn)\
- Starting the transition away from PlatformInfo::FPlatformInfo to FDDPI

[CL 13966487 by Josh Adams in ue5-main branch]
2020-07-29 16:19:10 -04:00
Josh Adams
94f4be4de1 - Renamed PlatformInfo::FPlatformInfo to PlatformInfo::FTargetPlatformInfo
- Renamed FDataDrivenPlatformRegistry::FPlatformInfo to FDataDrivenPlatformInfo
- Moved some fields from PlatformInfo::FTargetPlatformInfo to FDataDrivenPlatformInfo, and cleaned them up in the process
- Fixed the DataDrivePlatformInfo.ini files to match the previous items
- Removed FVanillaPlatformEntry, and now just using FTargetPlatformInfo to manage flavors under a vanilla PlatformInfo (see PlatformInfo::GetVanillaPlatformInfoArray())
- Cleaned up TPerPlatformValue, as it was often misused (took a group and platform name, but we can get the group from the platform name) [AnimationSharingManager.cpp, *Engine.cpp, Runtime\Engine\*, ]
- Fixed FBlueprintNativeCodeGenPaths::GetDefaultCodeGenPaths() to use IniPlatformName instead of some hacky code [BlueprintNativeCodeGenManifest.cpp]
- Fixed various Turnkey bugs that recent testing exposed
- Enabled AUTOSDKS_ENABLED in both Mac and Linux on the Editor side (not that there are much set up to use it)
- Using Turnkey to get the SDK status instead of ValidatePlatforms (gives more detailed information - may want to go back to ValidatePlatforms so only UBT is needed, but change it to give more info)
- Moved OnDeviceDiscovered and Lost delegates from each platform's TargetPlatform class to a static in ITargetPlatform - there was no need for per-platform implementations
- Started working on allowing for SDK to be installed with editor running and not need to restart editor - Work in Progress! It is not usable yet.
#fyi jack.porter
#rb pete.sauerbrei

[CL 13816905 by Josh Adams in ue5-main branch]
2020-07-01 17:07:12 -04:00
Matt Kuhlenschmidt
603a4119c5 Fix HAL/PlatformFileManager.h non-portable casing CIS issues
#rb none

[CL 13214257 by Matt Kuhlenschmidt in ue5-main branch]
2020-05-06 17:58:18 -04:00
Jamie Dale
9b1287d0b1 Removed the ELocTextPlatformSplitMode::Restricted option
There are no longer any platforms marked as having "restricted" localization, as they all now live inside platform extensions. The original spirit of this option lives on as ELocTextPlatformSplitMode::Confidential, however none of our localization targets are using it and it has limited utility.

#rb none

[CL 13035985 by Jamie Dale in Main branch]
2020-04-24 14:49:53 -04:00
jamie dale
978b9023e3 Fixed LatAm Spanish using Castilian Spanish translations for things that had been deliberately left untranslated
LatAm Spanish (es-419) often leaves words in English rather than translate them, however we were finding that they would take the Castilian Spanish (es) translation instead, which often lead to confusion for players as those terms weren't understood within the LatAm community.

This was caused by the fact that any untranslated text (text matching the source) was considered redundant and was skipped when generating the LocRes file, which failed to take into account potentially needing to override a base translation when dealing with language hierarchies.

This change now tests otherwise untranslated text against the translations of any parent languages, and will consider the entry translated if it is different from one that would be inherited at runtime.

[FYI] Carlos.Almeida, David.Emmanuelli
#rb Lauren.Barnes

#ROBOMERGE-SOURCE: CL 12973946 via CL 12973947 via CL 12973948 via CL 12973950
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)

[CL 12973951 by jamie dale in Main branch]
2020-04-22 08:14:03 -04:00
jamie dale
31ed8e8335 Follow-up to CL# 11118619 to fix the class filtering on the UI option
#jira
#rb none
#rnx

#ROBOMERGE-SOURCE: CL 12152708 in //UE4/Release-4.25/... via CL 12152726
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v659-12123632)

[CL 12152749 by jamie dale in Main branch]
2020-03-12 15:14:17 -04:00
Max Chen
b4881d8bf8 Copying //UE4/Dev-Editor to Dev-Tools-Staging (//UE4/Dev-Tools-Staging) @11123875
#rb none
#jira none

[CL 11123880 by Max Chen in Dev-Tools-Staging branch]
2020-01-27 20:11:15 -05:00
ryan durand
471d972e62 Updating copyright for Engine Developer.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870584 by ryan durand in Main branch]
2019-12-26 15:32:37 -05:00
KristofMorva
c1a6f1b496 PR #6316: Persist translator comments when exporting PO (Contributed by KristofMorva)
#rb Jamie.Dale

[CL 9899724 by Jamie Dale in Main branch]
2019-10-31 08:30:10 -04:00
Marc Audy
8df336162c Copying //UE4/Dev-Anim to Dev-Main (//UE4/Dev-Main) @ 8782600
#rb
#rnx

[CL 8783278 by Marc Audy in Main branch]
2019-09-17 19:12:19 -04:00
marc audy
46aa647673 Remove duplicate function definition
#rnx
[FYI] Michael.Trepka


#ROBOMERGE-SOURCE: CL 7639961
#ROBOMERGE-BOT: (v372-7473910)

[CL 7639983 by marc audy in Main branch]
2019-07-26 14:29:17 -04:00
michael trepka
d7c706ae85 Copy of CL 7605175
Changes to make new Clang in Xcode 11 beta compile the engine witout warnings

#jira UE-77043


#ROBOMERGE-OWNER: michael.trepka
#ROBOMERGE-AUTHOR: michael.trepka
#ROBOMERGE-SOURCE: CL 7627878 via CL 7627884 via CL 7636118
#ROBOMERGE-BOT: (v372-7473910)

[CL 7636120 by michael trepka in Main branch]
2019-07-26 13:29:50 -04:00