* Added InitAndCopy functions on FNetBitArray. Used to quickly construct a bit array from an existing source (either bitarray or bitarrayview)
* Added Set functions. Used to overwrite the bitarray with the word operations of two other arrays.
#rb Peter.Engstorm
[CL 25380553 by louisphilippe seguin in ue5-main branch]
- Fixed bug where we did not immediately resend lost state for properties utilizing multiple changemask bits (arrays) until next time root property bit was modfied.
- Added testcase to catch this.
#rb Peter.Engstrom
#preflight 64512e821c2846595cb25a60
[CL 25314687 by mattias hornlund in ue5-main branch]
* Added GridFilter unit tests
* Encapsulated RepTag creation hack for unit tests
* Fix FragmentGridFilter reading world location fragment using wrong FVector unit type
#rb Peter.Engstorm
#rnx
[CL 25214436 by louisphilippe seguin in ue5-main branch]
* Add Filter Trait to NetObjectGroups
* NetObjectGroup global filtered list is now correct when a group acquires or loses it's filter trait
#jira UE-184027
#rb Peter.Engstorm, Mattias.Hornlund
#rnx
[CL 25199569 by louisphilippe seguin in ue5-main branch]
* Filter are now done in two passes
* The first pass executes regular engine filter options then any dynamic filters not using fragment data.
* Then any filtered object not relevant to atleast one connection will get culled out.
* Culled out objects will not get polled or copy their dirty data into the fragments.
* After the poll and copy is done, we now filter again only for filters that work with fragment data.
* This final filter list gets passed to be prioritized and given to the ReplicationWriter.
#jira UE-181941
#rb Peter.Engstorm, Mattias.Hornlund
#rnx
[CL 25175076 by louisphilippe seguin in ue5-main branch]
* Add cull distance to world locations storage
* Now only UNetObjectGridFragmentLocFilter reads the cull distance from the fragment data.
* UNetObjectGridWorldLocFilter wil instead read it from FWorldLocations
#rb Peter.Engstorm
#rnx
[CL 25096579 by louisphilippe seguin in ue5-main branch]
* Added IsBitSet
* Added CombineMultiple to run bit operations on two const bitarrays in 1 loop
* Added ToString that prints how many set bits the array currently has. Slightly expensive do not abuse with active logs.
* Added FNetBitArrayPrinter utility functions
#rb Peter.Engstorm, Mattias.Hornlund
[CL 25087720 by louisphilippe seguin in ue5-main branch]
* Split Mock filter into a seperate class when it needs to read fragment data of an object
#rb Peter.Engstorm
[CL 25018286 by louisphilippe seguin in ue5-main branch]
Note that there's no rebalancing code so as objects get out of scope and new objects are created an inbalance may occur eventually.
#preflight 642d42fdda7f958370c7567b
#rnx
#rb mattias.hornlund
[CL 24926362 by peter engstrom in ue5-main branch]