Commit Graph

5679 Commits

Author SHA1 Message Date
kevin macaulayvacher
9aa9ce185c FHarvestedRealm::NameExists changed to consume const FName& rather than FNameEntryId as it leaked the internal storage details for export names of the realm into the API.
Since we only store display names in the realm, we can directly compare FNames using display names when verifying we saved correctly.

114ms -> 3ms for SaveContext_NameExists over 71,680 instances for a QAGame cook

#jira UE-187673
[REVIEW] [at]francis.hurteau [at]danny.couture
#rb Francis.Hurteau

[CL 30270756 by kevin macaulayvacher in ue5-main branch]
2023-12-12 13:53:02 -05:00
devin doucette
da5e1f36c6 Extended ConvertFromType to indicate whether it serialized the value without conversion
#jira UE-197352
#rb Steve.Robb

[CL 30266352 by devin doucette in ue5-main branch]
2023-12-12 12:06:20 -05:00
tim smith
109fd80275 Refactored the StructuredArchiveVisitor to use the higher level object instead of the formatters directly. This prepare serialization for better UObject integration.
#rnx
#rb russell.johnston, yiliang.siew

[CL 30260775 by tim smith in ue5-main branch]
2023-12-12 07:34:46 -05:00
kurtis schmidt
40670934d1 Fix for null verse function of verse object using overridable serialization.
#jira UE-201882
#rb kurtis.schmidt maxime.mercier

[CL 30258149 by kurtis schmidt in ue5-main branch]
2023-12-12 02:27:01 -05:00
bob tellez
efeef11b6a Merging CL#30256491
[Backout] - CL30255477
[FYI] Dylan.Fansler
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL30233397
[FYI] Robert.Manuszewski
Original CL Desc
-----------------------------------------------------------------
Setting any of the root flags on UObjects while Incremental Reachability is running will now trigger GC barrier

Moved UE::GC::Private::GIsIncrementalReachabilityPending to GarbageCollectionGlobals.h to be able to access it from UObjectArray.h
Moved UObject::MarkAsReachable() to UObjectBase::MarkAsReachable() to be able to use it from FUObjectItem (UObjectArray.h)

#rb Johan.Torp
[FYI] Francis.Hurteau

[CL 30256627 by bob tellez in ue5-main branch]
2023-12-11 22:32:04 -05:00
bob tellez
bc2621737e [Backout] - Finishing backout of CL30233419
[FYI] robert.manuszewski
Original CL Desc
-----------------------------------------------------------------
Setting any of the root flags on UObjects while Incremental Reachability is running will now trigger GC barrier

Moved UE::GC::Private::GIsIncrementalReachabilityPending to GarbageCollectionGlobals.h to be able to access it from UObjectArray.h
Moved UObject::MarkAsReachable() to UObjectBase::MarkAsReachable() to be able to use it from FUObjectItem (UObjectArray.h)

#rb Johan.Torp
[FYI] Francis.Hurteau

[CL 30256267 by bob tellez in ue5-main branch]
2023-12-11 21:50:03 -05:00
dylan fansler
c833cacdd5 [Backout] - CL30233397
[FYI] Robert.Manuszewski
Original CL Desc
-----------------------------------------------------------------
Setting any of the root flags on UObjects while Incremental Reachability is running will now trigger GC barrier

Moved UE::GC::Private::GIsIncrementalReachabilityPending to GarbageCollectionGlobals.h to be able to access it from UObjectArray.h
Moved UObject::MarkAsReachable() to UObjectBase::MarkAsReachable() to be able to use it from FUObjectItem (UObjectArray.h)

#rb Johan.Torp
[FYI] Francis.Hurteau

[CL 30255613 by dylan fansler in ue5-main branch]
2023-12-11 20:51:09 -05:00
todd eckert
2b5f640597 Added a rename flag to disable component registration during the rename process.
#rb michael.bao
#rnx

[CL 30251341 by todd eckert in ue5-main branch]
2023-12-11 17:45:40 -05:00
ahmed siddique
d70352cd9b Android SingleInstance Service
Tested on Android with Lyra and also preflight checks.

#android
#rb chris.babcock

[CL 30244258 by ahmed siddique in ue5-main branch]
2023-12-11 13:59:52 -05:00
tim smith
d6f8a641a8 Fixed issue where FrankenGC mode was not being immediately enabled thus running the risk of the VerseGC running when it shouldn't.
#rnx
#rb markus.breyer

[CL 30237786 by tim smith in ue5-main branch]
2023-12-11 09:53:00 -05:00
danny couture
063bd33b4c [ObjectAnnotation]
- Fix potential race condition on unprotected members in AddAnnotationInternal

#rb Francis.Hurteau

[CL 30236753 by danny couture in ue5-main branch]
2023-12-11 08:40:47 -05:00
matt peters
64658cf6ae GetAssetRegistryTags deprecation: Make the old GetAssetRegistryTags and related functions deprecated.
Upgrade the overrides and callsites in all of Epic's code.
Every class that can be subclassed by licensees that has its override change needs to keep the old version of the function as deprecated. Otherwise subclasses that call Super::GetAssetRegistryTags will have a compile error instead of a deprecation warning.
Several classes had their own extension method for GetAssetRegistryTags being passed on to user data classes. Updated all of those to take FAssetRegistryTagsContext just like GetAssetRegistryTags does.
#rnx
#rb Francis.Hurteau

[CL 30224166 by matt peters in ue5-main branch]
2023-12-08 21:45:21 -05:00
jordan hoffmann
49731bf33c [BugFix] made archetype struct names fully unique by calling MakeUniqueObjectName
[CL 30223245 by jordan hoffmann in ue5-main branch]
2023-12-08 19:41:23 -05:00
jordan hoffmann
7467fa4fa3 [BugFix] copy paste error fix that can cause nullptr to get dereferenced
[CL 30223136 by jordan hoffmann in ue5-main branch]
2023-12-08 19:35:53 -05:00
robert millar
f70cb1e8c1 Change GC IsReadyForFinishDestroy timeout logging to only log every 10 seconds instead of every iteration after timeout has passed.
Add a cvar to control maximum number of items logged.

#rb will.brown

[CL 30222349 by robert millar in ue5-main branch]
2023-12-08 18:36:24 -05:00
jordan hoffmann
6d1c000af5 [Tests] Proof of concept test for Property Bags and Archetypes
This CL introduces a ue console command that will construct a test object (UTestReportCardV<1..5>) and then upgrade it to a different version creating an archetype in the process. That archetype will then be displayed in a details panel.
Syntax:  TestVerseArchetypes <OldClassVersion> <NewClassVersion>
OldClassVersion and NewClassVersion must be integers between 1 and 5
#jira UE-199979
#rb Phillip.Kavan, Andrew.Davidson

[CL 30220171 by jordan hoffmann in ue5-main branch]
2023-12-08 16:50:42 -05:00
jordan hoffmann
fc30a5f88f [BugFix] FProperty::ConvertFromType fixups to support property bags and archetypes
#jira UE-199979
#rb Francis.Hurteau

[CL 30218340 by jordan hoffmann in ue5-main branch]
2023-12-08 15:19:20 -05:00
jordan hoffmann
b280d62874 [BugFix] Accidentally enabled a branch of code that shouldn't be enabled until FPropertyPathNames type info is fully finished
[CL 30217898 by jordan hoffmann in ue5-main branch]
2023-12-08 15:04:45 -05:00
matt peters
d2f46fc86a GetAssetRegistryTags: Fix deprecation-handling code to pass along the AssetBundle from the deprecated path into the new FAssetRegistryTagsContext.
#rb Ben.Zeigler
#rnx

[CL 30217330 by matt peters in ue5-main branch]
2023-12-08 14:49:08 -05:00
jordan hoffmann
3018bec0b1 [Feature] Archetypes being used for the Scenegraph Serialization
miro: https://miro.com/app/board/uXjVNVqTAsU=/?share_link_id=446429147441

This is a WIP feature. Known bugs/missing support with this feature includes:
- I haven't put much thought/testing into what to do when the class being fixed up already has an inheritance structure beyond just inheriting directly from UObject. currently, the archetype flattens the inheritance structure
- I haven't put much thought/testing into how archetypes should handle sub-objects. I think that would take place external to this code though during serialization
- sets, maps, and enums still don't have full support in property bags so they don't fully work here either

#jira UE-199979
#rb Phillip.Kavan, Andrew.Davidson

[CL 30216227 by jordan hoffmann in ue5-main branch]
2023-12-08 13:54:04 -05:00
tim smith
4b5040aad6 Added a new visitor test to make sure the context system is working as expected.
#rnx
#rb yiliang.siew

[CL 30209317 by tim smith in ue5-main branch]
2023-12-08 08:34:26 -05:00
robert manuszewski
29242128f9 CIS fix
#rb Robert.Manuszewski

[CL 30206987 by robert manuszewski in ue5-main branch]
2023-12-08 02:02:16 -05:00
robert manuszewski
7b38e67cb8 Setting any of the root flags on UObjects while Incremental Reachability is running will now trigger GC barrier
Moved UE::GC::Private::GIsIncrementalReachabilityPending from UObjectGlobals.h to UE::GC::GIsIncrementalReachabilityPending in GarbageCollectionGlobals.h to be able to access it from UObjectArray.h
Moved UObject::MarkAsReachable() to UObjectBase::MarkAsReachable() to be able to use it from FUObjectItem (UObjectArray.h)

#rb Johan.Torp, Tim.Smith

[CL 30206940 by robert manuszewski in ue5-main branch]
2023-12-08 01:45:47 -05:00
yiliang siew
36b63b4a46 Making changes so that VerseVM will compile without the WITH_VERSE_VM macro being defined normally,
and also removing the escape hatch for "the source file must include the header of the same name" and
just including the superfluous header files for now to silence UBT warnings.

#rb Tim.Smith
#rb Tim.Smith
[FYI] Joe.Kirchoff
[FYI] Chris.Waters

[CL 30196956 by yiliang siew in ue5-main branch]
2023-12-07 19:05:24 -05:00
russell johnston
c21aa39336 Bind <native> methods in VerseVM
Also clean up VNI paths for parametric types.

#rb Markus.Breyer

[CL 30194905 by russell johnston in ue5-main branch]
2023-12-07 18:06:33 -05:00