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
MrGadget
d5bbfee793
fix(NetworkAnimator): Enable -> OnEnable
2024-01-10 15:06:22 -05:00
mischa
d525be9670
perf(Prediction): CorrectHistory now starts at the 'afterIndex' from Sampling. replaces two full iterations with two half = one full iteration
2024-01-10 15:56:03 +01:00
mischa
b1419db4f4
Prediction: Sample() now returns 'afterIndex' to reuse in the other iteration later
2024-01-10 15:56:01 +01:00
mischa
8473eff1ff
Prediction.CorrectHistory: reuse 'key'. same but cleaner.
2024-01-10 15:41:33 +01:00
mischa
0fd342e6a9
Prediction: CompareState renamed to OnReceivedState
2024-01-10 15:39:53 +01:00
mischa
eab82ee465
Prediction: simplify CorrectHistory by moving InsertCorrection into CompareState
2024-01-10 15:38:52 +01:00
mischa
e06fcd5535
Prediction: call ApplyState directly; move ApplyCorrection into Compare state. prepares for more improvements later.
2024-01-10 15:36:11 +01:00
mischa
9aadcbf442
syntax
2024-01-10 15:25:29 +01:00
mischa
13aa0c2e6b
Prediction: syntax
2024-01-10 14:36:44 +01:00
mischa
157a86fa7b
Prediction: simplify CompareState. detect edge cases early instead of late to prepare for more refactoring
2024-01-10 14:34:18 +01:00
MrGadget
9b9b9cc400
fix(NetworkServer): Improve Warnings ( #3727 )
...
* fix(NetworkServer): Improve Warnings
- Attempt to dig up the Object, component, and method name to make debugging easier
- Changes identity to identity.name so the object name is logged correctly.
* Update Assets/Mirror/Core/NetworkServer.cs
Co-authored-by: mischa <16416509+miwarnec@users.noreply.github.com>
* Update Assets/Mirror/Core/NetworkServer.cs
Co-authored-by: mischa <16416509+miwarnec@users.noreply.github.com>
* Use GetFunctionMethodName
* cleanup
---------
Co-authored-by: mischa <16416509+miwarnec@users.noreply.github.com>
2024-01-10 13:46:48 +01:00
MrGadget1024
ac72d3670d
fix(NetworkServer): Log message cleanup
2024-01-10 07:24:26 -05:00
MrGadget
d86d297c26
feat(RemoteProcedureCalls): Added GetFunctionMethodName ( #3732 )
...
* fix(Weaver): Move InvokeRpcPrefix from Weaver to RemoteProcedureCalls
* feat(RemoteProcedureCalls): Added GetFunctionMethodName
2024-01-10 13:17:44 +01:00
MrGadget
110580a454
fix(Weaver): Move InvokeRpcPrefix from Weaver to RemoteProcedureCalls ( #3731 )
2024-01-10 13:16:49 +01:00
mischa
849dd94ce7
Tests: Prediction.Sample()
2024-01-10 11:51:22 +01:00
mischa
b3e102e4fd
perf(PredictedRigidbody): comparing idle objects now skips recording state (= inserting into tree structure) as well
2024-01-10 10:27:27 +01:00
MrGadget
6e0c4a66d8
fix(NetworkManager): Prevent client from calling ServerChangeScene ( #3729 )
...
- Throws error if server isn't active
- allows for changing to offline scene regardless
2024-01-10 10:16:47 +01:00
MrGadget1024
6445547aef
fix(SyncVarAttributeAccessReplacer): Corrected error log message
...
- assembly identifiers were reveresed.
- also improved phrasing
2024-01-10 04:09:15 -05:00
MrGadget1024
8543f1f37d
fix(NetworkIdentity): Improved DisallowChildNetworkIdentities Error Logging
...
References the offending object so it gets highlighted in the Editor when the error is clicked.
2024-01-09 19:43:48 -05:00
MrGadget1024
28b1e8b374
fix(NetworkBehaviour): Improved OnValidate Error Logging
...
References the offending object so it gets highlighted in the Editor when the error is clicked.
2024-01-09 19:43:17 -05:00
MrGadget1024
88a9d7dcb1
chore(CI): RunUnityTests - updated unityVersion
2024-01-09 16:53:22 -05:00
mischa
24513562a4
perf(PredictedRigidbody) make CompareState O(1) for idle objects by comparing last first
2024-01-09 12:47:50 +01:00
mischa
a295d7d330
PredictedRigidbody: cleaner 'remember last' approach that allows for reuse elsewhere
2024-01-09 12:47:50 +01:00
mischa
f05623526c
PredictedRigidbody: explain the concept
2024-01-09 12:47:50 +01:00
JesusLuvsYooh
dd950018dc
fix: NT-Unreliable Quaternion Compression Fix ( #3725 )
...
* fix: NT-Unreliable Quaternion Compression Fix
Credits to ninja of course :D
* Client using server snapshots fix.
* Nothing to see here..
* Added comment to Quat Rotation Fix
2024-01-09 11:37:47 +01:00
mischa
c6741061d9
Prediction: explain SortedList
2024-01-08 19:41:05 +01:00
mischa
b0933a1d07
remove TODO
2024-01-08 18:01:53 +01:00
mischa
587a5fe92a
perf(Prediction): replace O(logN) binary search with O(1) in RecordState
2024-01-08 18:01:36 +01:00
mischa
609c3e1e41
Prediction: RigidbodyState moved to separate file
2024-01-08 17:48:14 +01:00
mischa
10b3b234a4
Prediction: CorrectHistory moved into Prediction.cs for easier unit testing
2024-01-08 17:42:53 +01:00
mischa
8225f97d5d
Prediction: move Debug.DrawLine before the recalculations
2024-01-08 17:42:50 +01:00
mischa
f51af69499
Prediction: move snapping above insertion because insertion would've been useless if snapped
2024-01-08 17:42:48 +01:00
mischa
19a47e67b2
Prediction: disable correction message logging
2024-01-08 17:07:28 +01:00
mischa
011ce5a331
comments
2024-01-08 11:56:07 +01:00
mischa
a843232a86
adjust defaults
2024-01-08 11:43:04 +01:00
mischa
ba16e2f949
fix(PredictedRigidbody): now snaps into place below a velocity threshold to fix dancing rigidbodies near rest position due to prediction fighting with corrections
2024-01-08 11:34:50 +01:00
MrGadget
e32914969f
feat(NetworkClient): Add RegisterHandler with ChannelId ( #3728 )
...
- Same as NetworkServer...allows NetworkMessage handlers to have a channelId param
This is NetworkServer's version:
```cs
public static void RegisterHandler<T>(Action<NetworkConnectionToClient, T, int> handler, bool requireAuthentication = true)
where T : struct, NetworkMessage
{
ushort msgType = NetworkMessageId<T>.Id;
if (handlers.ContainsKey(msgType))
{
Debug.LogWarning($"NetworkServer.RegisterHandler replacing handler for {typeof(T).FullName}, id={msgType}. If replacement is intentional, use ReplaceHandler instead to avoid this warning.");
}
// register Id <> Type in lookup for debugging.
NetworkMessages.Lookup[msgType] = typeof(T);
handlers[msgType] = NetworkMessages.WrapHandler(handler, requireAuthentication, exceptionsDisconnect);
}
```
2024-01-08 10:37:47 +01:00
MrGadget
1299676d79
fix(Multiplexer): Avoid KeyNotFoundException in OriginalId ( #3723 )
...
Fixes : #3719
2024-01-08 09:53:08 +01:00
MrGadget1024
c38603b0c5
fix(NetworkServer): RemovePlayerForConnection use NetworkConnectionToClient
...
- This has to be an oversight - all callers are passing NetworkConnectionToClient
2024-01-07 11:16:15 -05:00
mischa
7ff1fd0dfe
fix(KCP): KcpClient RawSend may throw ConnectionRefused SocketException when OnDisconnected calls SendDisconnect(), which is fine
2024-01-07 12:53:47 +01:00
mischa
df918ecf9f
fix(Prediction): InsertCorrection would produce NaN multipliers, spreading through prediction code
2024-01-07 12:37:45 +01:00
mischa
febcce9513
perf: PredictedRigidbody ghost visibility update now only runs every 200ms
2024-01-06 12:30:11 +01:00
mischa
3a34dba5ed
perf: PredictedRigidbody now caches original renderers instead of calling GetComponentsInChildren every frame
2024-01-06 12:23:05 +01:00
mischa
4eb9a255a0
PredictedRigidbody: UpdateVisualCopy helper function
2024-01-06 12:23:02 +01:00
mischa
0cc4726728
fix(InterestManagement): calling OnEnable multiple times doesn't show an error anymore
2024-01-06 11:57:13 +01:00