Commit Graph

1581 Commits

Author SHA1 Message Date
brian bekich
6d847c813b Backout 19356865 and history index size changes from 18938566
#ROBOMERGE-OWNER: brian.bekich
#ROBOMERGE-AUTHOR: brian.bekich
#ROBOMERGE-SOURCE: CL 19380467 via CL 19380482 via CL 19380489 via CL 19381971 via CL 19394950 via CL 19395258
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19402923 by brian bekich in ue5-main branch]
2022-03-16 03:23:00 -04:00
Patrick Boutot
1e4c3973db UHT: Add FieldNotify specifier to UHT. It auto generate the UE_FIELD_NOTIFICATION_DECLARE_CLASS_DESCRIPTOR and UE_FIELD_NOTIFICATION_IMPLEMENT_CLASS_DESCRIPTOR macro. FieldNotify is only available on FProperty and UFunction member of a UCLass and if the UClass implement the INotifyFieldValueChanged interface.
#preflight 622f43d419287beb2c316755

[CL 19372159 by Patrick Boutot in ue5-main branch]
2022-03-14 09:47:28 -04:00
Tim Smith
3044817c8b Deprecate CLASS_NoExport. It was only being used by UHT.
#rb trivial
#rnx
#jira UE-117144
#preflight 622f32e80a342dea04e2face

[CL 19371725 by Tim Smith in ue5-main branch]
2022-03-14 08:36:12 -04:00
andrew scheidecker
533e2944b4 Add a FDynamicallyTypedValue class that stores a value as some uninterpreted memory and a pointer to some runtime type information that contains methods to interpret the memory.
The garbage collector gains opcodes to mark references inside these values, though a FProperty to emit those opcodes is not part of this changelist.
#rb Robert.Manuszewski, Steve.Robb
#preflight 622b3d98cd605bd993bb58e1

#ROBOMERGE-AUTHOR: andrew.scheidecker
#ROBOMERGE-SOURCE: CL 19353106 via CL 19354089 via CL 19355248 via CL 19357433 via CL 19357654
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19359137 by andrew scheidecker in ue5-main branch]
2022-03-11 14:30:17 -05:00
steve robb
388bb6ad45 Deprecation of PLATFORM_COMPILER_HAS_IF_CONSTEXPR.
#rb devin.doucette
#preflight 6228c99b31133a23da858e84

#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 19322028 via CL 19325625 via CL 19327461 via CL 19327581
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19348292 by steve robb in ue5-main branch]
2022-03-10 22:04:02 -05:00
jamie dale
00f04864c0 Added FCoreUObjectDelegates::OnObjectPostCDOCompiled
This is similar to UObject::OnPostCDOCompiled, but doesn't require that you implement the logic on a particular class.

#jira
#preflight 6227b758c653e7ef9f572d0b
#rb Rex.Hill

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 19319787 via CL 19319840 via CL 19320685 via CL 19323486 via CL 19323658
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19348039 by jamie dale in ue5-main branch]
2022-03-10 21:51:02 -05:00
robert manuszewski
1074c5e48c Added a few utility functions to help with using property setters and getters with properties representing containers (Arrays / Sets / Maps) or structs
#preflight 6221fb52b066ef60bba404a3
#rb Steve.Robb

#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19264826 via CL 19266236 via CL 19271583 via CL 19278279 via CL 19293645
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19344991 by robert manuszewski in ue5-main branch]
2022-03-10 19:36:10 -05:00
Matt Peters
6b69c8a5d9 #jira UE-144941
Make the cooked AssetRegistry.bin deterministic.
#rb Johan.Torp
#rnx
#preflight 6228b03acc09078bab52ecbb

[CL 19319417 by Matt Peters in ue5-main branch]
2022-03-09 09:03:55 -05:00
CarlMagnus Nordin
d22a30228c Fixed incorrect FStructuredArchive operator<< overload for TObjectPtr
#rnx
#rb steve.robb
#preflight 6220d5256a33f9b416a80a05

[CL 19244103 by CarlMagnus Nordin in ue5-main branch]
2022-03-03 10:31:20 -05:00
robert manuszewski
8b1d237e47 Changing FORCENOINLINE to FORCEINLINE on some of the FProperty functions related to setters and getters
#rb trivial
#preflight none

#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19197804 via CL 19200026 via CL 19208114 via CL 19208483 via CL 19210874
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19215697 by robert manuszewski in ue5-main branch]
2022-03-01 21:35:58 -05:00
jamie dale
88f34e3e51 Fixed FSoftObjectPath::GetLongPackageName returning an empty string when set to a package name
If a FSoftObjectPath was set to a package name (eg, "/Game/MyPackage") then GetLongPackageName would return an empty string which is inconsistent with GetLongPackageFName.

This change makes the behavior of GetLongPackageName and GetLongPackageFName consistent (returning the package name if there's no object in the path), and also removes a temporary FString allocation from GetLongPackageName and GetAssetName.

#jira
#preflight 62193b8a1d1c5017994bd387
#rb Matt.Peters

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 19178061 via CL 19183781 via CL 19185359 via CL 19185753 via CL 19200259
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19213115 by jamie dale in ue5-main branch]
2022-03-01 20:03:15 -05:00
Matt Peters
63955f5f1f Optimize FCoreRedirects::GetMatchingRedirects since it is showing up as a moderately high cost in cooks (38s out of 870s in CitySample).
#rb Stefan.Boberg
#rnx
#preflight 621e42cbca28c556342bd1d9

[CL 19199624 by Matt Peters in ue5-main branch]
2022-03-01 11:28:32 -05:00
marc audy
7ec196ccbe Make Subobject Class Overrides (more) const correct
#rb Ben.Hoffman
#jira UE-114303
#preflight 621d079c037be0078ca95fdf
#lockdown julien.marchand

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 19176515 in //UE5/Release-5.0/... via CL 19177706
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19179814 by marc audy in ue5-main branch]
2022-02-28 14:45:17 -05:00
benjamin fox
9565bad74b BlueprintHeaderView: Add ListView items for variables and fix function parameter type names
#jira UE-138707
#jira UE-143137
#rb phillip.kavan
#preflight 62180683e27ba405e8653eab

[CL 19175085 by benjamin fox in ue5-main branch]
2022-02-28 11:37:01 -05:00
robert manuszewski
f96e4337bd Disallowing using script classes as base classes for assets
#rb Markus.Breyer
#preflight 621679fc0f71e491cc089112

#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19110433 via CL 19118518 via CL 19118528 via CL 19118558 via CL 19120665
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19153597 by robert manuszewski in ue5-main branch]
2022-02-25 14:47:33 -05:00
jamie dale
9210f5a7b0 API exposed some PropertyAccessUtil functions
#preflight skip
#rb none

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 19079578 via CL 19098416 via CL 19104735 via CL 19104922 via CL 19110046
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19147922 by jamie dale in ue5-main branch]
2022-02-25 10:44:31 -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
jeanfrancois dube
c96587db2a UPackageMapClient is now aware of incomplete PIE packages streaming external actors:
- Original fix was to prevent discovery of incomplete PIE packages from the package map client, which resulted in potential failures to resolve external actors outer chain from the incomplete package.
- Solution is to revert the original fix and make the package map aware of incomplete PIE packages to delay resolving of external actors until the package is considered complete. This cannot rely on UPackage::IsFullyLoaded since technically, the package is fully loaded and needs to be for external actors to properly resolve their outer.

#jira UE-141116
#rb patrick.enfedaque
#preflight 6214de68a97c2c3348ca296f

#ROBOMERGE-AUTHOR: jeanfrancois.dube
#ROBOMERGE-SOURCE: CL 19082637 in //UE5/Release-5.0/... via CL 19097157
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19140938 by jeanfrancois dube in ue5-main branch]
2022-02-24 23:35:48 -05:00
daniel broder
94d6cac569 Corrected comments on UFUNCTION keywords Reliable and Unreliable to indicated they are valid in conjunction with NetMulticast, not just Client and Server.
#UE5 #RNX #NoReleaseNotes

#ROBOMERGE-AUTHOR: daniel.broder
#ROBOMERGE-SOURCE: CL 19079546 via CL 19081887 via CL 19088898 via CL 19089020 via CL 19090085
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19131795 by daniel broder in ue5-main branch]
2022-02-24 19:09:53 -05:00
Matt Peters
55e9f3e8ea FScopeCycleCounterUObject trace: suppress per-object timer names (using per-class instead) if AssetLoadTime channel is not enabled. This prevents poor performance due to 2million timers in insights on large cooks. Also change per-class timers to display"Blueprint" for blueprint classes, to prevent many new timers for projects with a large number of blueprints.
#rb Danny.Couture
#rnx
#preflight 6217bd47ea60a4af9d28a950

[CL 19117052 by Matt Peters in ue5-main branch]
2022-02-24 12:30:54 -05:00
Dan Thompson
d412b366a3 Adding support to writing platform specific tags to the asset registry during cook by the book.
FArchive now holds a "CookData" blob that contains relevant information for cooking. The TargetPlatform has been moved to this structure, and it has a reference to a CookContext that can hold data generated during the cook that doesn't get serialized to the uasset (in this case, the asset registry tags).
#rb Matt.Peters
#preflight 62151bc4797dbbeb472af77d
#preflight 621011f6ff52bfecfc032b15
#preflight 62152777141b500e17eb24ef

[CL 19076066 by Dan Thompson in ue5-main branch]
2022-02-22 13:32:02 -05:00
jamie dale
9c7fb9246a Fully deprecated the contextless PostCDOCompiled
#jira
#preflight 6210450ccc18880e8bc79da5
#rb none
#rnx

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 19061229 via CL 19061232 via CL 19071632 via CL 19071711 via CL 19072190
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v920-19070459)

[CL 19073102 by jamie dale in ue5-main branch]
2022-02-22 10:41:22 -05:00
robert millar
5811293e2a Add TargetRules.bFNameOutlineNumber as an option to reduce the size of FName by 4 bytes by storing the number in the name table.
Adds a define UE_FNAME_OUTLINE_NUMBER.
Removes of FName, FMinimalName from memory image support. Adds of FMemoryImageName.
Removal of FMinimalName operator&lt;&lt;, all fields made private, size made variable.
All fields of FScriptName made private.
Added console commands for dumping numbered/unnumbered names and stats.

#rb johan.torp

#ROBOMERGE-OWNER: robert.millar
#ROBOMERGE-AUTHOR: robert.millar
#ROBOMERGE-SOURCE: CL 19058026 via CL 19058611 via CL 19058656 via CL 19061727 via CL 19061740 via CL 19064047
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v918-19018356)

[CL 19066701 by robert millar in ue5-main branch]
2022-02-21 02:35:48 -05:00
jamie dale
cfdad64946 Added context to PostCDOCompiled and also call it for skeleton-only compiles
#jira
#preflight 6210112553204823ae8bcf4f
#rb Michael.Noland

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 19058032 via CL 19058041 via CL 19058078 via CL 19058094 via CL 19059619
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v918-19018356)

[CL 19066317 by jamie dale in ue5-main branch]
2022-02-21 02:04:58 -05:00
robert manuszewski
c36e03d5e3 do clause support
#rb Andrew.Scheidecker
#preflight 620f3a108863746a104d6c36

#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19047989 via CL 19048186 via CL 19048197 via CL 19048203 via CL 19049414
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v918-19018356)

[CL 19065767 by robert manuszewski in ue5-main branch]
2022-02-21 00:33:13 -05:00