Commit Graph

2511 Commits

Author SHA1 Message Date
mickael gilabert
8ab0de4b52 Fixed CIS
#rb trivial

[CL 25393972 by mickael gilabert in ue5-main branch]
2023-05-09 15:40:06 -04:00
mickael gilabert
0b085a725c UClass uses UE::FMutex instead of FRWLock if USE_UE_LOCK_FOR_UCLASS_FUNCTION_HANDLING is defined (useful on platform that has a limited system objects count)
[REVIEW] [at]devin.doucette, [at]dan.oconnor, [at]danny.couture
#rnx

[CL 25393949 by mickael gilabert in ue5-main branch]
2023-05-09 15:39:35 -04:00
robert manuszewski
9b67247e26 Making sure running out of available UObject slots crashes regardless of checks being enabled or not otherwise it will siletnly result in stomps or OOM crashes
#preflight 6459cc266c35ad81e6514e22
#rb Johan.Torp

[CL 25384020 by robert manuszewski in ue5-main branch]
2023-05-09 02:58:02 -04:00
chris tchou
1eab09f9c7 Landscape Texture Mip Storage Provider, give us an option to customize how Landscape Texture data is stored.
Currently, Landscape will only apply the new storage provider to it's heightmaps at cook time, when it sees that the landscape has been flagged to use the new compressed storage path (enabled under Landscape -> Advanced), and only for Windows platforms (to be expanded as we test other platforms).

The compressed storage path option on the landscape is hidden by default, and can be made visible via CVAR ("landscape.ShowCompressHeightMapsOption")

Makes use of a new All Mip Provider interface to Texture2Ds, that expands on the existing Mip Data Provider (that only supported providing streaming mips).
The new interface assumes you want to completely override the Texture2D mip data.

When Texture2D sees that it has an All Mip Provider, it will skip serializing it's own heavyweight mip data during cook, as it assumes the provider will take care of providing all mip data.

The majority of the implementation is in LandscapeTextureStorageProvider, which implements the AllMipProvider that can store landscape heightmaps in a custom compressed format.  Each mip's height data is stored using delta encoding, and normals are reconstructed.

#rb jonathan.bard, jian.ru
#jira UE-180654
#preflight 64541acf6c35ad81e61890cc
#preflight 64542713fd4b8f4e0d9a2ce9
#preflight 6459378bfd4b8f4e0dc206d2

[CL 25381191 by chris tchou in ue5-main branch]
2023-05-08 19:51:44 -04:00
johan torp
a101abc1e8 Require FGCObject debug name
#rb robert.manuszewski
#rnx
#preflight 64550ac9fd4b8f4e0de3ba92

[CL 25368332 by johan torp in ue5-main branch]
2023-05-08 04:42:39 -04:00
robert millar
41c6ff78ec Allow streamable manager to flush only the relevant async loading requests for a given streamable handle.
#rb ben.zeigler,francis.hurteau

[CL 25363331 by robert millar in ue5-main branch]
2023-05-05 21:36:05 -04:00
Matt Peters
45536e88d7 SavePackage's TransientPropertyOverrides: Change LinkerSave to not write out UObject properties that are marked with transient, rather than writing them out with nullptr. This removes the need for a hack fix of the property name and makes the package output more closely match the output that would occur if the property had no values, which should be more robust against future changes.
#rb Francis.Hurteau
#rnx
#preflight 645553ef023fe5d3ada2b10a

[CL 25359298 by Matt Peters in ue5-main branch]
2023-05-05 16:18:53 -04:00
Steve Robb
cdf61a7e2b Removed operator new (TArray) usage from headers.
#rb james.hopkin
#jira none
#preflight 6454fcdc4574b81df4e18dc5

[CL 25353357 by Steve Robb in ue5-main branch]
2023-05-05 09:13:53 -04:00
paul chipchase
d91ff399b2 Add an overload to FEditorBulkData::UpdatePayload that takes a FCompressedBuffer directly
#rb Per.Larsson
#jira none
#rnx
#preflight 6453ce50d863ba2621851360

- FCompressedBuffer will calculate the FIoHash of its data and FEditorBulkData can take the hash from there rather than calculating one itself. If you create one with no compression codec set you could use that to control when the hashing takes place before passing the data to FEditorBulkData.
- In the future we might change FEditorBulkData to hold its data in a FCompressedBuffer, allowing us to avoid decompressing the payload unless someone actually asks for it in uncompressed format.
- Added some unit tests

[CL 25352762 by paul chipchase in ue5-main branch]
2023-05-05 08:27:38 -04:00
johan torp
912e14e1ca Delete UE_WITH_GC that was only used by C++ UHT, which is unsupported and about to be removed
#rb tim.smith
#rnx
#preflight

[CL 25350540 by johan torp in ue5-main branch]
2023-05-05 04:01:55 -04:00
danny couture
3ca42ef3bd Fix deadlock by not holding the annotation mutex while calling into code that takes another lock
#rnx
#rb Andriy.Tylychko
#preflight 64527ba41c2846595c05be90

[CL 25333934 by danny couture in ue5-main branch]
2023-05-04 09:32:44 -04:00
paul chipchase
f684fc8020 Do not treat FIoHash as a rvalue when updating a payload as it doens't actually do anything.
#rb trivial
#jira none
#rnx
#preflight 64536fc1743c256cd6e71b28

[CL 25332030 by paul chipchase in ue5-main branch]
2023-05-04 04:59:21 -04:00
jordan hoffmann
998f100767 [BugFix] FindNth* methods in FScriptMapHelper and FScriptSetHelper were indexing out of order
#jira none
#preflight trivial

[CL 25318850 by jordan hoffmann in ue5-main branch]
2023-05-03 12:27:52 -04:00
dan oconnor
4624cd5c03 Fix memory scribble when constructing struct literals with bitfields
#jira UE-182822
#preflight 64505e7ce73c4d47c3dee33a
#rb Phillip.Kavan

[CL 25305731 by dan oconnor in ue5-main branch]
2023-05-02 14:43:26 -04:00
jordan hoffmann
3481b1bcdd [BugFix] FScriptMapHelper::Iterator and FScriptSetHelper::Iterator post-increment operators were pre-incrementing
#rb steve.robb
#preflight 6450252a805eff7b44a922d5

[CL 25295251 by jordan hoffmann in ue5-main branch]
2023-05-01 19:31:01 -04:00
mickael gilabert
c20471dbb1 Disable buffer overrun warning false positive in order to support FastGenPGO.
[REVIEW] [at]john.huelin
#rnx
#preflight 644fc9d10e33f2d51d7121a2

[CL 25288325 by mickael gilabert in ue5-main branch]
2023-05-01 14:31:58 -04:00
zousar shaker
667631d654 Change ObjectHandle private methods to take UObject* instead of UObject&.
#rb joe.pribele

[CL 25242589 by zousar shaker in ue5-main branch]
2023-04-28 17:37:56 -04:00
johan torp
a092dc7b11 GC cleanup in preparation for new GC schema
#rb robert.manuszewski
#rnx
#preflight 644ba7301c2846595c1b493e

[CL 25238849 by johan torp in ue5-main branch]
2023-04-28 15:58:59 -04:00
yiliang siew
2d77624f2d Add a callback to get notified when the UObject GC finishes purging objects. This is a copy of the changes in 25150493.
#rb Robert.Manuzewski
#rb Saam.Baarti
[FYI] Andrew.Scheidecker
#preflight 644b0e58b208f61af85281f3

[CL 25238695 by yiliang siew in ue5-main branch]
2023-04-28 15:54:50 -04:00
jordan hoffmann
a5a79e4a99 [BugFix] Optimizations to FScriptMapHelper::FindInternalIndex and FScriptSetHelper::FindInternalIndex aren't returning INDEX_NONE when someone passes in an index outside the bounds.
#rb none
#preflight trivial

[CL 25238112 by jordan hoffmann in ue5-main branch]
2023-04-28 15:37:27 -04:00
paul chipchase
3224a8ab34 Update the experimental FEditorBulkData sidecar saving feature to use FPackageTrailer
#rb Per.Larsson
#jira UE-139530
#rnx
#preflight 644bc6e4f502608229ff7e68

- The functionality remains mostly the same and is still disabled by default.
- We use the older legacy serialization path if sidecar saving is enabled.
- Updating the code to use FPackageTrailer allows us to finally delete the older which was the precursor to the FPackageTrailer system. This will allow us to combine some code paths in the future and reduce complexity.

[CL 25232459 by paul chipchase in ue5-main branch]
2023-04-28 11:05:06 -04:00
jodon karlik
472b38353a Properly deprecate old IsDataValid for a new, const version with FDataValidationContext.
This allows your assets to warn on top of erroring out.

#jira UE-183475
#preflight 644ae7701c2846595cbe0e21

[CL 25224515 by jodon karlik in ue5-main branch]
2023-04-27 17:53:18 -04:00
joe pribele
3e7fa6208f changed FSoftObjectPathFixupArchive to ignore FObjectPtr to avoid resolving unresolved FObjectPtrs
https://p4-swarm.epicgames.net/reviews/25174125

#rb zousar.shaker
#preflight 644aa9e8b208f61af82230e1

[CL 25218594 by joe pribele in ue5-main branch]
2023-04-27 13:16:25 -04:00
joe pribele
3c7379f5c0 changed ArchiveObjectCrc32 to not resolve unresolved FObjectPtr the path name of an object can be obtained from a FObjectPtr without resolving
https://p4-swarm.epicgames.net/reviews/25174152

#rb tim.smith
#preflight 644aa8c2693defa68d7e65d3

[CL 25218417 by joe pribele in ue5-main branch]
2023-04-27 13:09:01 -04:00
zousar shaker
fb1536bbe2 Ensure that ObjectHandles can compute hashes when referencing objects with an invalid index. This can happen during the early initialization phase of the engine before UObjectBaseInit|UObjectProcessRegistrations get called and register deferred objects.
#rb joe.pribele

[CL 25209509 by zousar shaker in ue5-main branch]
2023-04-26 19:52:36 -04:00