134 Commits

Author SHA1 Message Date
mattias hornlund
3c5f5ea2cb Iris
- Fixed issue where object could get stuck in state waitforcreateconfirmation, if cancelling creation, and then cancelling destroy.

#rb Peter.Engstrom
#tests BR, PIE, new unittests reproducing bug and verifying fix

[CL 32567378 by mattias hornlund in 5.4 branch]
2024-03-27 20:54:32 -04:00
bradley heath
56769709ac Implement a bespoke copy constructor and assignment operator in TNetChunkedArray.
#rb Peter.Engstrom
#tests Cooked build and unit tests

[CL 32513841 by bradley heath in 5.4 branch]
2024-03-26 12:45:43 -04:00
mattias hornlund
3ce203f1bd Iris
- Fixed BitStream corruptions due to sending unexpected data to not yet confirmed objects
- Fixed issue where PendingFlush would not properly flush attachments if posted on the same frame as the object was destroyed if it was waiting for cration confirmation.

#rb Peter.Engstrom

[CL 32500347 by mattias hornlund in 5.4 branch]
2024-03-26 03:00:39 -04:00
peter engstrom
ca0c651d1b Iris - Fix ReplicationSystemTest failure due to NetObjectGridFilter updates.
#rnx

[FYI] louisphilippe.seguin

[CL 32499987 by peter engstrom in 5.4 branch]
2024-03-26 02:47:49 -04:00
peter engstrom
f11636f647 Fix for ReplicationSystemTest compile errors.
#rnx
#rb bradley.heath

[CL 32498168 by peter engstrom in 5.4 branch]
2024-03-26 01:47:12 -04:00
mattias hornlund
65bc912b75 Iris
- Fixed issue with posting rpcs to out of scope subobjects being scheduled with internal index and transmitted with invalid object.

#rb Peter.Engstrom

[CL 32489111 by mattias hornlund in 5.4 branch]
2024-03-25 18:29:58 -04:00
mattias hornlund
4fcc71b5e4 Fixed compilation errors from 31718958
#jira UE-207435
#rb Peter.Engstrom

[CL 32486422 by mattias hornlund in 5.4 branch]
2024-03-25 17:34:24 -04:00
peter engstrom
ff0d1c340d Iris - Keep reliability as is when splitting a NetBlob. Split unreliable multicast RPCs will now also keep their normal execution order.
#rb mattias.hornlund, louisphilippe.seguin
[FYI] ana.tsaplii

[CL 32486378 by peter engstrom in 5.4 branch]
2024-03-25 17:33:46 -04:00
peter engstrom
6ac917c591 Iris - Fix issue causing lost state during an object being marked for destroy to never be resent. If the object ends up cancelling pending destroy this could cause state to be lost forever and also bitstream errors on objects with delta compression enabled.
#rnx

[CL 32186184 by peter engstrom in 5.4 branch]
2024-03-12 14:06:58 -04:00
mattias hornlund
658489f570 Iris
- Modified FastArrayReplictionFragment to allow for partial dequantization when applying state data.
- Uses more memory which we should be able to optimize away.

#rb Peter.Engstrom

[CL 31573213 by mattias hornlund in 5.4 branch]
2024-02-16 13:56:02 -05:00
louisphilippe seguin
c1644771ea Iris
* Added NetRefHandle::GetInvalid() and replaced existing calls to FNetRefHandle() to GetInvalid()

#rnx
#rb Peter.Engstrom

[CL 31426507 by louisphilippe seguin in 5.4 branch]
2024-02-13 10:07:12 -05:00
bradley heath
8f338f2872 Update Iris grid filtering to include an exact culling distance check.
#rb peter.engstrom, louisphilippe.seguin

[CL 31182007 by bradley heath in 5.4 branch]
2024-02-05 13:50:42 -05:00
peter engstrom
ed2cb99aa4 Iris - Don't destroy object until creation has been acked.
#rb Mattias.Hornlund

[CL 31050379 by peter engstrom in 5.4 branch]
2024-01-31 11:26:45 -05:00
peter engstrom
a6cf2d5500 Iris - Don't destroy dependent objects that haven't yet been created.
#rb Mattias.Hornlund

[CL 30997695 by peter engstrom in 5.4 branch]
2024-01-30 04:06:31 -05:00
mattias hornlund
ce9bef7c29 Iris - Fix issue where state changes accrued while going out of scope and later readded to scope was not dirtied correctly
#jira UE-204441
#rb Peter.Engstrom

[CL 30797159 by mattias hornlund in ue5-main branch]
2024-01-23 04:47:27 -05:00
louisphilippe seguin
31df80a222 Iris
* Renamed Poll phase to PollAndCopy
* Renamed CopyAndQuantize phase to Quantize


#rb Mattias.Hornlund, Peter.Engstrom

[CL 30659381 by louisphilippe seguin in ue5-main branch]
2024-01-17 11:13:22 -05:00
peter engstrom
26c3e561b8 Iris - Fix issue with subobjects not being destroyed as soon as possible. Validate object isn't pending destroy when marking dirty.
#rb Mattias.Hornlund

[CL 30630027 by peter engstrom in ue5-main branch]
2024-01-16 04:33:32 -05:00
chris constantinescu
4b539c383f Replication tests compilation errors on Linux and other platforms
#rb rob.huyett, Ryan.Gerleve, sebastian.lewicki
#jira UE-203730

[CL 30569736 by chris constantinescu in ue5-main branch]
2024-01-11 11:12:52 -05:00
louisphilippe seguin
244ca2179b Iris
* Added unitest testing when one object causes a push model dirty change on a different object inside PreReplication

#rnx
#rb Ryan.Gerleve

[CL 30328251 by louisphilippe seguin in ue5-main branch]
2023-12-14 14:40:06 -05:00
mattias hornlund
da81a3d888 Iris
- Fixed floating point precistoin bug with really high priorities which caused issues with scheduling of dependent objects
- Caused issues with scopes on weapons.

#rb LouisPhilippe.Seguin

[CL 30319125 by mattias hornlund in ue5-main branch]
2023-12-14 09:30:23 -05:00
chris constantinescu
61dabd85af Replycation System Tests: fix unreachable code
#rb sebastian.lewicki
#jira UE-202417

[CL 30265237 by chris constantinescu in ue5-main branch]
2023-12-12 11:28:08 -05:00
louisphilippe seguin
75ee0efac9 Iris
* Added unit test for setting a push model property dirty from inside PreNetUpdate

#rnx
#rb Mattias.Hornlund

[CL 30237765 by louisphilippe seguin in ue5-main branch]
2023-12-11 09:52:34 -05:00
peter engstrom
b18f75f0cb Iris - Update world locations for spatially filtered objects that are assumed to be able to move.
#rb LouisPhilippe.Seguin

[CL 30118545 by peter engstrom in ue5-main branch]
2023-12-05 10:08:32 -05:00
mattias hornlund
926232ad2d Network
- Improved handling of ack history overruns which will no longer cause false negatives, if we overshoot ackhistorybuffer client will now  flush the sequence history before accepting new data packets.

Added FNetPacketNotify::IsSequenceWindowFull. Make DataStreamChannel use the new functionality since some DataStreams require all sent packets to be correctly ACKed or NAKed. DataStreamChannel can spare a few packets, controlled via cvar net.Iris.PacketSequenceSafetyMargin which currently defaults to 4, in order to allow other channels to send data without breaking DataStreamChannel.

Moved NetPacketNotifyTests into TestNetPacketNotify.

#rb Peter.Engstrom,Mattias.hornlund

[CL 30074498 by mattias hornlund in ue5-main branch]
2023-12-04 05:34:08 -05:00
peter engstrom
7a0d3fc25f Iris - Added dependent actor test with dynamic filtering
#rb mattias.hornlund

[CL 29916993 by peter engstrom in ue5-main branch]
2023-11-24 04:26:27 -05:00