Commit Graph

3890 Commits

Author SHA1 Message Date
matt peters
979f9e8100 IncrementalCook: Add ReferencedSet.txt for use when staging from a zen oplog that could include previous-cook entries than were no longer referenced from the most recent cook.
Refactor CookByTheBookFinishedInternal to move all optional writes into the per-platform forloop so we can share data calculated for each platform between ReferencedSet.txt and the AssetRegistry.
Remove the no-longer-used SCOPED_BOOT_TIMING macros; we profile cook times using UE_SCOPED_HIERARCHICAL_COOKTIMER now.
#rnx
#rb Zousar.Shaker

[CL 36759205 by matt peters in 5.5 branch]
2024-10-01 19:46:19 -04:00
jamie dale
bf2592e212 Replaced usage of FInternationalization::ForUseOnlyByLocMacroAndGraphNodeTextLiterals_CreateText with FText::AsLocalizable_Advanced
[FYI] Leon.Huang
#rnx

[CL 36759164 by jamie dale in 5.5 branch]
2024-10-01 19:45:55 -04:00
jamie dale
29b79bcaf6 Audited existing usage of FText::FindText
[FYI] Leon.Huang
#rnx

[CL 36756757 by jamie dale in 5.5 branch]
2024-10-01 19:24:00 -04:00
anton dunchev
e0de0354f3 [LLM] Properly clear LLM tagset scope
#tests LLM RR
#rnx
#rb Matt.Peters

[CL 36755752 by anton dunchev in 5.5 branch]
2024-10-01 19:10:20 -04:00
yoan stamant
264a07ce86 [Config] No longer skip EditorOnly properties when not in Editor (introduced in CL 400612) so standalone mode (-game) will be consistent with Editor and PIE.
#rb Aris.Theophanidis, Josh.Adams, Francis.Hurteau
#jira UE-224162

[CL 36755292 by yoan stamant in 5.5 branch]
2024-10-01 19:06:44 -04:00
paul chipchase
6e7f255861 Add a new feature allowing bulkdata cooked output to be split into smaller files to help with data organization and patching efforts.
#rb Per.Larsson, Pere.Rifa
#jira UE-222974

- To enable the feature call FBulkData::SetCookedIndex with a FBulkDataCookedIndex set to a value between 1 - 255. Zero is currently reserved as the default/off state and can be quickly accessed via FBulkDataCookedIndex::Default.
-- Note that we might change the default value in the future, the main reason to keep it as zero for now is that it means FChunkId values will remain unchanged for bulkdata files not using the feature.
- When a bulkdata object has a cooked index it will output to a file with that value based on the following format  <packagename>.CookedIndex.<extension> so a normal bulkdata payload with a cooked index of 5 would end up writing to <packagename>.005.ubulk.
-- This allows the calling systems to control which bulkdata payloads go to which sub files.
- We currently do not support memory mapped payloads or payloads with the duplicate non optional flags. Support and testing for this will be added later.
- Tested saving/editing/loading packages with bulkdata in the editor (vector fields), build/cook/run normal builds, build/cook/run with feature enabled then running the new code with data produced from non modified code and running non modified exe on data generated with the new code.

### IPackageResourceManager
- Added overloads for most methods that take EPackageSegment that also take a FBulkDataCookedIndex and deprecated the older versions.
- Not all methods have been ported over, just the ones I could test but the rest will need the same treatment at some point.

### FLinkerSave
- Now stores each set of bulkdata, optional bulkdata and memory mapped payloads in separate archives, one per cooked index.
- Added a method ::HasCookedIndexBulkData that returns if any of the normal bulkdata payloads contain a non default cooked index. This is used for some paranoid checks when saving packages to the workspace domain.

[CL 36754477 by paul chipchase in 5.5 branch]
2024-10-01 18:59:56 -04:00
matt peters
4988993a1f Cooker: Fix the preload optimization to support arbitrary ordering of packages during PumpLoads: in addition to preloading the package itself, also preload its graph of imports before calling LoadPackage.
Removed the EPackageState::LoadPrepare, EPackageState::LoadReady, and EPackageStateProperty::State property, replaced them (the return of the original) single EPackageState::Load. Substates within Load are now handled by a separate state variable on FPackagePreloader.
The substate on FPackagePreloader is more complex than a usual substate, because now FPackagePreloaders can be in an active substate of EPreloaderState even when the FPackageData's state is not in load.
#rnx
#rb Zousar.Shaker

[CL 36752869 by matt peters in 5.5 branch]
2024-10-01 18:45:41 -04:00
steve robb
fa3c83284a Trivial changes to force an integration to Release-32.00.
#rnx

[CL 36748846 by steve robb in 5.5 branch]
2024-10-01 18:00:28 -04:00
steve robb
9566ac5def Trivial changes to force an integration to Release-32.00.
#rnx

[CL 36748103 by steve robb in 5.5 branch]
2024-10-01 17:51:05 -04:00
steve robb
28bf104b6a Added cvar to control if non-nullable properties produce an error, a warning or a default object when failing to resolve an object reference.
Default objects will not be created if the class is abstract.

#rb Francis.Hurteau
#jira UE-224118

#tests Ran editor, new unit tests

[CL 36747664 by steve robb in 5.5 branch]
2024-10-01 17:46:30 -04:00
phillip kavan
596a8859d9 Push array inner property to current archiver state when serializing "replacement" array item value overrides on load.
#rb Maxime.Mercier

[CL 36346969 by phillip kavan in 5.5 branch]
2024-09-17 15:12:28 -04:00
anton dunchev
cf63f92e07 [LLM] Remove FName block allocations and TextureManager construction from contributing to the MemQuery/Memtrace asset memory cost readings
#rb Matt.Peters
#tests local run

[CL 36172047 by anton dunchev in 5.5 branch]
2024-09-10 21:22:01 -04:00
Ryan Hummer
4af2fd066d Updating Dev-Release-5.5 from Main at CL #36144969
#okforversepublic

[CL 36146571 by Ryan Hummer in Dev-5.5 branch]
2024-09-10 10:26:02 -04:00
jordan hoffmann
ddf8d5f875 [Backout] - CL35987496
[FYI] jordan.hoffmann
Original CL Desc
-----------------------------------------------------------------
[Bugfix] Crash when adding to Container properties
#jira UE-217965
#rb Devin.Doucette

[CL 36029862 by jordan hoffmann in ue5-main branch]
2024-09-04 21:52:20 -04:00
russell johnston
c678b783c2 Property support for containers with intrusive unset optional states
#rb steve.robb

[CL 36011287 by russell johnston in ue5-main branch]
2024-09-04 11:43:38 -04:00
fredrik lindh
615c41a78b Fixing a bug where the GC would not be aware of package metadata in WITH_METADATA builds. (Bug found by [at]danny.couture)
Adding WITH_METADATA support for AsyncLoading2 (ZenStore).

#rb Devin.Doucette, Francis.Hurteau

#tests Cooked Lyra manually and tested. Tested build permutations (editor/game)

[CL 36009705 by fredrik lindh in ue5-main branch]
2024-09-04 10:55:46 -04:00
jordan hoffmann
cf0620e0fa [Bugfix] Crash when adding to Container properties
#jira UE-217965
#rb Devin.Doucette

[CL 35987649 by jordan hoffmann in ue5-main branch]
2024-09-03 18:33:00 -04:00
matt peters
85e5756271 Cooker: Fix bug in MPCook that would allow the cooking of __ExternalObject__ packages (or any other package marked as PKG_EditorOnly).
Remove canskipeditoronlywhencooking; it is no longer necessary because its functionality has been replaced by skiponlyeditoronly.
MPCook was handling PKG_EditorOnly because it could not handle skipeditoronlywhencooking, and the two concepts used the same flag to toggle use of them in SavePackage. By removing canskipeditoronlywhencooking, we can turn that flag on.
#rb Francis.Hurteau
#rnx

[CL 35966555 by matt peters in ue5-main branch]
2024-09-03 10:17:11 -04:00
ben clayton
225101e149 [AutoRTFM] Fix memory leaking from FUObjectItem::StatIDStringStorage
If the transaction was aborted between CreateStatID() and the FUObjectItem destructor, then the memory allocated in the open for the StatID was not freed.
Allocate the memory in the open, and carefully assign / reset StatIDStringStorage atomically in the open / abort handler.

Also fix / silence some other leaks in UECoreTests.cpp

#rb neil.henning

[CL 35962183 by ben clayton in ue5-main branch]
2024-09-03 04:20:17 -04:00
steve robb
774fdff546 Fixed wrong object being validated in FObjectProperty::PostSerializeObjectItem.
#rb robert.manuszewski

[CL 35940397 by steve robb in ue5-main branch]
2024-08-30 18:44:30 -04:00
steve robb
35dfcd49fb Fixed odd "nullptred" naming in log message.
[CL 35939013 by steve robb in ue5-main branch]
2024-08-30 18:08:54 -04:00
steve robb
7a926d411a Added missing GetObjectPtrPropertyValue_InContainer overloads.
[CL 35938695 by steve robb in ue5-main branch]
2024-08-30 17:54:33 -04:00
dan oconnor
ca66d01b85 Also run CollectReferencers when searching for referencers, as it is fast and catches things that override ARO or UE::GC::DeclareIntrinsicMembers, the former is used by UObjectRedirector and as such references from UObjectRedirectors were not being reported by FindReferencers
#rb Phillip.Kavan
#rnx

[CL 35938453 by dan oconnor in ue5-main branch]
2024-08-30 17:46:45 -04:00
steve robb
eb8eed520e Reordered FObjectPropertyBase-derived classes' Get functions to be consistent with the Set functions.
[CL 35938438 by steve robb in ue5-main branch]
2024-08-30 17:46:33 -04:00
steve robb
e6ec368ac2 Reordered FObjectPropertyBase's Get and Set functions to be consistent.
[CL 35937940 by steve robb in ue5-main branch]
2024-08-30 17:21:03 -04:00