Commit Graph

6648 Commits

Author SHA1 Message Date
paul chipchase
548ec539c0 Prevent bulkdata objects being saved with duplicate guids when saving a level created from a template.
#rb Francis.Hurteau
#jira UE-223781
#lockdown mark.lintott

- This issue was originally fixed in CL 23787156 but since then the editor has changed it's loading path and the 'LOAD_RegenerateBulkDataGuids' flag was no longer being passed to all of the packages being loaded as part of the map template.
- Taking a step back, the problem here is that the .umap package is correctly marked as being instanced but it's associated _BuiltData.uasset is not, so this time we will try fixing that instead by adding info about the _BuiltData.uasset package to the FLinkerInstancingContext being passed into the ::LoadPackage request. FEditorBulkData should then be made aware that it needs to generate new guids for the textures within that package.

- Deprecated LOAD_RegenerateBulkDataGuids as it is no longer needed as this was our only usecase.
- Deprecated FLinkerLoad::ShouldRegenerateGuids and removed the code using it from FEditorBulkData.

[CL 37221263 by paul chipchase in 5.5 branch]
2024-10-17 07:24:45 -04:00
saddha santanaporn
827c436826 Fix Static Analysis warning in Class.cpp
#rnx
[REVIEW] [at]Dan.Kaufman, [at]Beth.Reid, [at]Christopher.Daniel, [at]Anthony.Glueck, [at]Ben.Walker
#rb ben.walker

[CL 37068611 by saddha santanaporn in 5.5 branch]
2024-10-11 19:11:41 -04:00
saddha santanaporn
d923b29fa0 Add more debug info when there's a size mismatch during UStruct::SerializeVersionedTaggedProperties
#rnx
[REVIEW] [at]Dan.Kaufman, [at]Beth.Reid, [at]Christopher.Daniel, [at]Anthony.Glueck, [at]Ben.Walker
#rb dan.kaufman, eric.knapik, josh.may, kris.pelley

[CL 37029027 by saddha santanaporn in 5.5 branch]
2024-10-10 14:18:02 -04:00
anton dunchev
4471345564 [LLM] Move more EngineMisc allocations to specific categories, mark more assets/objects for LLM tracking
#tests RR
#rnx
#rb simon.orr

[CL 36985941 by anton dunchev in 5.5 branch]
2024-10-09 12:45:55 -04:00
russell johnston
6413162e1e Check FName memory availability alongside UObject table availability
#rb saam.barati

[CL 36952179 by russell johnston in 5.5 branch]
2024-10-08 19:25:05 -04:00
nick verigakis
6b69fed460 Modified the PropertyVisitor API to include the instance data for the parent struct.
#rb Francis.Hurteau, Maxime.Mercier

#ushell-cherrypick of 36789053 by nick.verigakis
#jira UE-226624
[FYI] scott.nelson
[RN] Encapsulated the property data argument of PropertyVisitor callbacks to an object that also includes the parent struct data.

[CL 36898819 by nick verigakis in 5.5 branch]
2024-10-07 10:21:38 -04:00
andrew davidson
33f5efa009 Disable IDOs for Fortnite 32.xx releases
#jira UE-226682
#rb francis.hurteau
#rnx

[CL 36878658 by andrew davidson in 5.5 branch]
2024-10-04 16:50:30 -04:00
dominic couture
e2b1810694 Fix UStruct::Link recent changes to restore legacy UProperty link list construction behavior (ie not nulling the next element as we build it)
This fixes a bunch of race conditions occuring in runtime when we load Blueprints in the async thread



#rb ben.zeigler, danny.couture, Lukasz.Furman

#ushell-cherrypick of 36869223 by Dominic.Couture

[CL 36877655 by dominic couture in 5.5 branch]
2024-10-04 16:26:57 -04:00
dan oconnor
1546667499 Avoid soft path serialization when saving weak and strong references with an object reference collector
#jira UE-225113
#rb ben.zeigler, Phillip.Kavan
#rnx

[CL 36830168 by dan oconnor in 5.5 branch]
2024-10-03 13:42:13 -04:00
adrien logut
e98061ee04 [PCG] Expose the User Parameters struct for modifying it and more get/set functions
* Can now get/set structs and objects
* Can now modify arrays and sets
* Needed to expose a new function for mutable sets
* Update tests

#rnx
#rb igor.dallavanzi, julien.lheureux, ryan.buehler
#jira UE-224563

[CL 36762554 by adrien logut in 5.5 branch]
2024-10-01 20:18:49 -04:00
lukasz furman
e3938d1385 fixed nullptr check
[CL 36762248 by lukasz furman in 5.5 branch]
2024-10-01 20:15:23 -04:00
lukasz furman
10f6ab02fc lint fix: verse class
[CL 36761807 by lukasz furman in 5.5 branch]
2024-10-01 20:11:16 -04:00
lukasz furman
06abda1bee added builders for property linked lists
#rb Steve.Robb

[CL 36761537 by lukasz furman in 5.5 branch]
2024-10-01 20:08:17 -04:00
ben zeigler
94f5882645 Change BP reinstancing to use the archetype caching system that was previously only for override serialization.
This fixes a blueprint component data corruption problem where placed instances and subclass templates could lose their property changes when compiling the component class, and replaces the partial fix in 36403142.
This is the 5.5 version of CL 36629032
#jira UE-222390
#rb dan.oconnor

[CL 36761530 by ben zeigler in 5.5 branch]
2024-10-01 20:08:11 -04:00
jibb smart
6b473b34ea Can now tell the player's controller about analog stick deadzones through PlayerController::SetControllerDeadZones, or directly as a device property using FInputDeviceAnalogStickDeadZoneProperty
While deadzone handling should always be done on the game's side, some device libraries also do some input filtering themselves so that noisy unintended input doesn't prevent power-saving modes from activating.

Since a game may allow players to set deadzones lower than the device defaults, we've added a way to inform the device of the player's deadzone settings.

#tests PIE, affected controllers, minimum, maximum, and default deadzone settings, among others.
#rb ben.woodhouse

[CL 36760458 by jibb smart in 5.5 branch]
2024-10-01 19:57:09 -04:00
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
tomasz obrebski
54a30bd892 IFileHandle seekless ReadAt
#jira UE-213809
#rb brian.white, daniele.pieroni, David.Harvey, Josie.Yang
#rnx

[CL 36757440 by tomasz obrebski in 5.5 branch]
2024-10-01 19:29:48 -04:00
danny couture
afce8a27c5 [ZenLoader]
- Fix ref counting issue causing use-after-free when ALT is active

#rnx
#rb kevin.macaulayvacher

[CL 36757353 by danny couture in 5.5 branch]
2024-10-01 19:29:00 -04:00
nick verigakis
d2ed7b31a3 New batch APIs to optimize UEFN project close times by deferring and batching:
- Calls to OnPluginUnload (one GC call for all plugins)
- Calls to FCollectionManager::HandleObjectDeleted (one UpdateCaches call at the end)

#rb Dave.Belanger, Francis.Hurteau
[FYI] Rex.Hill
#rnx

[CL 36757086 by nick verigakis in 5.5 branch]
2024-10-01 19:26:41 -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
dave jones2
36ab906b18 Added missing GetLongPackageFName functions to SoftObjectPtr variations.
The underlying FSoftObjectPath has a GetLongPackageFName, which is sometimes useful to call via the owning soft pointer.

#rb francis.hurteau

[CL 36755375 by dave jones2 in 5.5 branch]
2024-10-01 19:07:27 -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