Commit Graph

8467 Commits

Author SHA1 Message Date
ninjakickja
6a12df1a67 Added missing lastConstructedSentSyncData assignments in Client Broadcasts. 2024-01-22 09:58:51 +08:00
ninjakickja
df646323fb Added Unchanged Sending Options
This is equivalent to the old "only sync on change" option.
2024-01-22 09:40:28 +08:00
MrGadget
4c0d979d4d fix(Room Example): Updated Reward Script
- Added Headers
- made `available` private with ReadOnly
2024-01-21 16:18:56 -05:00
JesusLuvsYooh
b69b5ae604
perf(BenchmarkIdle Example): Lowered spawn amount to 10k (#3745)
50k causes a long delay, and looks like Unity has initially frozen, even on beefy machines.
To prevent users from thinking this, and perhaps force closing, amount is lowered to something still crazy, but more reasonable. :)
- Nothing else has been touched
2024-01-21 10:02:42 -05:00
Justin Nolan
d97739df71
Add missing replace handler override to NetworkServer (#3744) 2024-01-21 14:55:37 +01:00
mischa
ac344fd9d1 Prediction: detect renderers in children 2024-01-21 12:28:33 +01:00
ninjakickja
f785d70bf4 Port previous premature rounding fix to V1 2024-01-20 22:54:44 +08:00
ninjakickja
006fdcc3b7 Removed Debug statements 2024-01-20 22:23:44 +08:00
ninjakickja
04f247d43e Fixed V2 where full sync data is quantized first before considering delta
This causes premature rounding error (seen in tank turret bobbing) because full sync data has a rotation less than rotationSensitivity but non 0. but new snapshot derived from delta + quantized full sync data will produce a rotation of 0.

WIP - Need to fix this in V1
2024-01-20 21:58:12 +08:00
MrGadget
258a84c066
feat(NetworkTransform): Default Sync Direction = Client To Server (#3741)
* feat(NetworkTransform): Default Sync Direction = Client To Server
- This is done in Reset so Network Behaviour isn't effected.
- This will not change NT components already in place on objects / prefabs unless user manually chooses Reset in the inspector.

* Update Assets/Mirror/Components/NetworkTransform/NetworkTransformBase.cs

---------

Co-authored-by: mischa <16416509+miwarnec@users.noreply.github.com>
2024-01-20 10:47:41 +01:00
MrGadget
e10ab75bf5
fix(InterestManagement): Separate ResetState (#3743)
* fix(InterestManagement): Separate ResetState
We should not have hijacked Unity's callback for runtime resets.

* Updated Template
2024-01-20 10:46:29 +01:00
MrGadget
dd1a457f71
fix(NetworkIdentity): Separate ResetState (#3742)
* fix(NetworkTransform): Separate ResetState
We should not have hijacked Unity's callback for runtime resets.

* Rename test too
2024-01-20 10:46:13 +01:00
ninjakickja
65280a8f17 Porting V2 Settings and Time Interval Changes to V1 2024-01-20 09:18:29 +08:00
MrGadget
87979aeb38 fix: Updated Network Transform Template 2024-01-19 14:30:05 -05:00
MrGadget
b885db3703
fix(NetworkTransform): Separate ResetState (#3738)
We should not have hijacked Unity's callback for runtime resets.
2024-01-19 18:23:35 +01:00
MrGadget
ac050a804d
fix(NetworkServerTest): Updated tests (#3739)
- Expect Errors from PR #3737
2024-01-19 09:39:05 -05:00
MrGadget
e1a1f49d0c
fix: NetworkServer and NetworkClient respect exceptionDisconnect (#3737)
Throws error for disconnect, warning otherwise.
2024-01-19 11:07:33 +01:00
ninjakickja
5e52596b5c Updated Intervals to Frequency instead of Multiplier 2024-01-19 14:18:48 +08:00
ninjakickja
14e1091e0c Refined Sync Settings
Renamed SyncSettings to FullHeader - Affects V1 and V2
Added new enum SyncSettings to exclude rotation sync methods - Only affects V2
Added new enum RotationSettings to select rotation sync methods - Only affects V2
2024-01-19 11:11:19 +08:00
ninjakickja
15ed88779c Fix: Client Broadcast Delta sent on Reliable channel instead of Unreliable 2024-01-19 00:53:45 +08:00
ninjakickja
eb352f5485 Update HybridNetworkTransform.cs 2024-01-18 17:34:37 +08:00
ninjakickja
fb5c8399b5 Amend Register Handler Command to not require authority
Any object on that connection can send the command. We don't need an authorised object.
2024-01-18 13:25:38 +08:00
ninjakickja
af4bab60b2 Hybrid V2 using Network Messages
Saves header bandwidth.
WIP
Not cleaned up yet.
2024-01-18 10:43:01 +08:00
ninjakickja
e45e1b633a Fix: Euler Rotation quantized not updated when receiving full state. 2024-01-18 10:42:15 +08:00
ninjakickja
c7555d061c Corrected Typo In OnSerialize 2024-01-17 22:47:01 +08:00
ninjakickja
40fcefde6d Fix: Non-full position syncing causes unsynced axis to be at 0.
Added function to consider unsynced axes and use current axes values.
Added check to ensure deltas do not send before full syncs and full sync index should start at 1.
This prevents sending of delta, indexed at 0, being received and applied because the initial value of the index is 0 (thus the delta does not get rejected).
2024-01-17 10:48:26 +08:00
ninjakickja
937c59d504 Decouple Hybrid from NT Base 2024-01-16 23:08:07 +08:00
ninjakickja
d4835d0091 Initial Fixes on settings and validate.
Fixed OnValidate on full and delta send Multiplier.
Fixed syncSettings condition in OnEnable
2024-01-16 17:55:52 +08:00
JesusLuvsYooh
854de5644d Initial Push 2024-01-16 08:58:48 +00:00
mischa
1791d29da2 Prediction: force syncInterval=0 for now to reduce risks of projects misconfiguring this 2024-01-15 21:13:20 +01:00
mischa
98061c0f59 Prediction: increase default snap threshold from 0.5 to 2.0 to reduce jitter/fighting at 500ms RTT before objects are coming to rest 2024-01-15 15:46:41 +01:00
mischa
552ea5a6b1 Prediction: snapping now inserts the snapped state into history for more accurate corrections afterward 2024-01-15 10:45:31 +01:00
mischa
3719b25d3d Prediction: snapping now applies velocity. fixes stop-start-stop effect for final slow movements 2024-01-15 10:45:31 +01:00
MrGadget
f963f0eb9e fix(NetworkMatch): Added read only display of MatchID 2024-01-14 08:54:57 -05:00
mischa
0cb96901b8 Prediction: add server state ghost too 2024-01-14 13:39:29 +01:00
mischa
d3f916fc25 Prediction: inverse control flow where instead of separating renderers, we separate physics 2024-01-14 11:18:40 +01:00
mischa
ea136ee265 Prediction: recordInterval option 2024-01-14 10:15:33 +01:00
MrGadget
4e5e7a18c4 fix(NetworkAnimator): Added gameObject to Debug.LogWarnings 2024-01-13 16:27:49 -05:00
MrGadget
82a96a28f0 style(Attributes): removed space 2024-01-13 16:24:27 -05:00
mischa
832eb79876 Prediction: remove preview warning 2024-01-12 12:09:36 +01:00
mischa
7ec272f733 NetworkIdentity: make clientStarted internal, this doesn't need to be in the user facing API 2024-01-12 10:46:28 +01:00
mischa
7fae26ff6f PredictedRigidbody: add user callbacks 2024-01-11 19:45:28 +01:00
mischa
4dde5bf7d8 PredictedRigidbody: remove 'preview' warning! 2024-01-11 14:28:40 +01:00
mischa
10e7d716a7 PredictedRigidbody: now corrects rotations (hard, without deltas for now) 2024-01-11 14:23:59 +01:00
mischa
92444bfcb3 PredictedState: add quaternion requirements 2024-01-11 14:23:02 +01:00
mischa
0cb3568bb1 PredictedRigidbody: correctionThreshold renamed to positionCorrectionThreshold for clarity 2024-01-11 13:43:00 +01:00
mischa
8de65b5ae3 syntax 2024-01-11 13:42:51 +01:00
mischa
79c4298db9 Prediction: InsertCorrection moved into CorrectHistory, with complete step by step test coverage for the algorithm 2024-01-11 13:07:15 +01:00
mischa
383aff2698 fix(Prediction): revert to previous Sample() implementation, but with manual 'afterIndex' counting to fix failing test 2024-01-11 11:52:14 +01:00
mischa
e441ddb88d Predicton: update comment 2024-01-11 11:32:21 +01:00