- Added support for separate indices per NetTokenDataStore to make it possible to use fewer bits for the index for types with few exports.
#rb Peter.Engstrom
[CL 36757497 by mattias hornlund in 5.5 branch]
- Enabled use of NetTokens/NetTokenStore and NetTokenDataStores outside of Iris to facilitate exporting data from shared serialization paths
- NetTokenStore and NetTokenDataStores are now owned by NetDriver.
- Added support for CustomExport bunches to carry data assoiciated with NetTokenExports
GameplayTags
- GameplayTagNetSerializer now respects settings from GameplayTags.ini
- Implemented placeholder GameplayTagNetTokenDataStore.
GameplayTags are now using NetTokens to export data if running in the new dynamic mode.
#rb jodon.karlik, Ryan.Gerleve
[CL 36380672 by mattias hornlund in 5.5 branch]
* Downgraded FNetProfilerObjectInstance to a 32bit hash to save bandwidth when sending the FCreationHeader of new replicated objects.
#rnx
[CL 35564588 by louisphilippe seguin in ue5-main branch]
- make some net trace events important so they're cached and written to all traces
#rb carles.fernandez, matt.harris, Mattias.Hornlund, Peter.Engstrom
[CL 35534881 by joe bestrotheray in ue5-main branch]
* Deleted use of static DefaultCreateNetRefHandleParams. The FCreateNetRefHandleParams default parameter values should be used instead.
* Deleted bCanReceive param from FCreateNetRefHandleParams. This was only used by some unit tests.
* Removed unused cache option param in InternalFlushStateData
* Misc API cleanup
#rnx
#rb Peter.Engstrom
[CL 35454663 by louisphilippe seguin in ue5-main branch]
* Added safer ways to access internal buffers held by a FNetBitArray and FNetBitArrayView
* GetWord() can be used to safely access the full 32bit value to modify 32bit entries at once.
* GetDataChecked(NumWordSize) can be used to access the raw array buffer but will also validate that the maximum word iteration count is within the bounds of the NetBitArray
* Reset() has been deprecated in favor of ClearAllBits()
Iris
* Replaced usage of deprecated NetBitArray::Reset
* Replaced a few usages of unsafe GetData() with safer GetWord and GetDataChecked
* Replaced Reset with ClearAllBits
[CL 33692839 by louisphilippe seguin in ue5-main branch]
* Support runtime NetBitArray reallocations when maximum replicated object count is hit.
* FReplicationSystemParams can now configure an initial size for netobjet lists that can grow up to the MaxReplicatedObjectCount when the initialize size is all assigned to registered netobjets.
* Use InitialNetObjectListCount to set the initial list size.
* Use NetObjectListGrowCount to set by how many indexes we grow and realloca all netobject lists.
* Hitting the maximum active replicated object limit will now cause a fatal error and kill the process.
NetDriver
* Split Iris config into two structs: ReplicationSystemConfigClient and ReplicationSystemConfigServer
#rb bradley.heath, Peter.Engstrom
[CL 33647879 by louisphilippe seguin in ue5-main branch]
* Added some utility functions to count the amount of registered replicated objects of an actor
#rnx
#rb Jon.Fairchild
[CL 33270373 by louisphilippe seguin in ue5-main branch]
This also allows SetPropertyActiveOverride macros to be called outside of PreReplicate to move towards proper push model.
Removed some old deprecated code
#rb Peter.Engstrom
[CL 32891697 by mattias hornlund in ue5-main branch]
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
Prevent clang analysis warnings for uninitialized data from FArchive derived readers
#rnx
[CL 32857977 by joe kirchoff in ue5-main branch]
* Added official NetRefHandleError enum
* Added net.Iris.EnsureNetRefHandleError cvar. Used to control if NetRefHandle error should cause an ensure or not.
-1=never ensure. 0=ensure on any error. 1..X=ensure only for specific error type
Defaults to ensure on any error
#rb Bradley.Heath
#rnx
[CL 32584172 by louisphilippe seguin in ue5-main branch]