Commit Graph

5614 Commits

Author SHA1 Message Date
mischa
4972b8004a Tests: fix failing NetworkManagerTests because DeeplyTested test didn't register the GameObject for cleanup 2023-06-29 19:56:17 +08:00
mischa
13e07f5603 NetworkTime: rttVar renamed to rttVariance for consistency with old Mirror versions. makes it easier to upgrade. 2023-06-27 21:40:45 +08:00
mischa
37bbd7eb3d fix: SnapshotInterpolation.Insert() now has a bufferLimit to avoid ever growing snapshot buffers on extremely low-fps clients 2023-06-27 19:20:03 +08:00
mischa
60936f0646 perf: NetworkTransformBase SortedLists now allocate with a default capacity to avoid early resizing & allocations 2023-06-27 18:57:05 +08:00
mischa
97313bd295
feature: ConnectionQuality Heuristic + Callback + GUI (#3526)
* ConnectionQuality.cs

* NetworkClient.ConnectionQuality with virtual NetworkManager calculation

* NetworkPingDisplay displays ConnectionQuality

* Tanks: adjust NetworkPingDisplay size

* NetworkManager: provide simple version too

* color coding

* extension

* virtual claculate

* on changed hook

* better heuristic

* syntax

* remove comment

* naming

* update in interval

* tweaking

* enable log

* naming

* color

* log message

* comment

* syntax

* explanations
2023-06-26 05:50:03 +02:00
mischa
deaf53a9bb NetworkTime: reintroduce Round Trip Time Variance to prepare for ConnectionQuality 2023-06-25 10:33:23 +08:00
mischa
db83a4cca2 NetworkClient: initialBufferTime for debugging, comparisons, and to prepare for ConnectionQuality 2023-06-25 10:27:14 +08:00
mischa
00f20bca2e Tanks demo: always show time interpolation GUI for easier debugging 2023-06-25 10:20:59 +08:00
mischa
c599fb616e fix: NetworkClient TimeInterpolation: add 'current' bufferTimeMultiplier field to not overwrite the initial SnapshotSettings.bufferTimeMultiplier. Allows us to reset bufferTimeMultiplier in InitTimeInterpolation and prepares for ConnectionQuality. 2023-06-25 10:03:08 +08:00
mischa
16efc7eedf Disable the failing tests for now, so at least the project compiles without Weaver errors 2023-06-24 20:35:26 +08:00
mischa
2b6212b088 fix: Weaver SyncVarAttributeAccessReplacer now detects modifying [SyncVar] in another assembly and logs an error, instead of silently failing at runtime (#3525) 2023-06-24 12:34:59 +08:00
mischa
6465ac5394 Weaver: SyncVarAccessReplacer: pass Logging 2023-06-24 12:34:59 +08:00
mischa
19065acb19 Weaver: SyncVarAccessReplacer: syntax & comments to make it more obvious 2023-06-24 12:34:59 +08:00
mischa
6fb0b33188
fix: Weaver now weaves NetworkBehavious in nested type definitions (#3524)
* test for deeply nested weaving

* fix
2023-06-23 14:11:34 +02:00
mischa
d5664ab202 feature: Weaver adds 'bool Weaved()' to each NetworkBehaviour, which can be checked at runtime #3523 2023-06-23 20:07:28 +08:00
mischa
1d7af1b750 Tests: remove unused 'using' 2023-06-23 10:01:41 +08:00
mischa
d1719c1e7b fix: tests work on Unity 2022.2+ [imer] 2023-06-22 23:48:26 +08:00
mischa
73c9990f03 comments 2023-06-20 19:58:46 +08:00
mischa
4d127ad370 naming 2023-06-20 19:58:46 +08:00
mischa
c687bdd24a Weaver ILPostProcessorAssemblyResolver: use GetFileNameWithoutExtension 2023-06-20 19:58:46 +08:00
mischa
8cb58d73e8 syntax 2023-06-20 19:58:46 +08:00
mischa
74bbd295d5 readonly 2023-06-20 19:58:46 +08:00
mischa
69d4d251e2 comments 2023-06-20 19:58:46 +08:00
mischa
eb33dfd40e perf: Weaver ILPostProcessorAssemblyResolver FindFile searches dllname / exename in one iteration & without Linq 2023-06-20 19:58:46 +08:00
mischa
1cc888f287 Weaver: ILPostProcessorAssemblyResolver FindFile comments 2023-06-20 19:58:46 +08:00
mischa
5b7d9560c0 Weaver: ILPostProcessorAssemblyResolver caches FindFile for a 50x improvement in TypeReference.Resolve(), and a 22x improvement in total Weaver time for large projects 2023-06-20 19:58:46 +08:00
mischa
c960377911 Weaver: ILPostProcessorAssemblyResolver comment 2023-06-20 19:58:46 +08:00
mischa
443d1541d1 perf: Weaver ILPostProcessorAssemblyResolver FindFile caches exeName, dllName for ~0.1ms speedup per call 2023-06-20 19:58:46 +08:00
mischa
97f3d2dff4 Weaver ILPostProcessorAssemblyResolver: FindFile uses string name parameter directly 2023-06-20 19:58:46 +08:00
mischa
c6be031783 perf: Weaver ILPostProcessorAssemblyResolver uses ConcurrentDictionary to avoid multithreading locks 2023-06-20 19:58:46 +08:00
mischa
c5ad884145 RigidbodyPhysics demo: disable 'onlySyncOnChange' until #3519 is fixed 2023-06-20 19:53:40 +08:00
mischa
8be961bfb5 Examples/VR link 2023-06-20 16:17:53 +08:00
mischa
d0edb2d7a4 Unbatcher: Unity 2019 fix 2023-06-16 17:25:50 +08:00
mischa
fc561918a8 remove leftover comment 2023-06-16 17:19:03 +08:00
mischa
13fd7211e0
fix: Batching VarInt size header added to fix custom serializated NetworkMessages with size mismatch corrupting the next message in a batch (#3516)
* repro test

* Batcher, Unbatcher VarInt size prefix

* NetworkServer/Client adjusted

* add check

* fix tests

* Batcher: rename headersize

* NetworkMessages: MaxContentSize adjusted

* max size calculations adjusted

* fix tests

* Batcher.MaxMessageOverhead

* naming
2023-06-16 10:58:54 +02:00
mischa
6ac67b9b5f feature: NetworkRigidbody Benchmark demo 2023-06-16 12:26:59 +08:00
mischa
b49f5b39de fix: NetworkRigidbody/2D now uses .target's Rigidbody and supports child Rigidbodies 2023-06-16 10:42:39 +08:00
mischa
bbf1140fc9 NetworkRigidbody: MovePosition overwrite comments 2023-06-16 10:31:49 +08:00
mischa
84b408e377
feature: NetworkMessageId <> Type lookup and log function for debugging (#3515)
* feature: NetworkMessageId <> Type lookup and log function for debugging

* better to do in NC/NS
2023-06-16 03:48:08 +02:00
mischa
581d16eb75 Unbatcher: simplify GetNextMessage 2023-06-15 19:37:53 +08:00
mischa
54f6abb6ce feature: VarInt size prediction 2023-06-15 16:35:18 +08:00
mischa
cdf5edae0d syntax 2023-06-15 15:45:00 +08:00
mischa
321b68b2bc NetworkMessages: keep GetId<T> for convenience 2023-06-15 15:44:06 +08:00
mischa
4cb2e75d4f syntax 2023-06-15 15:36:19 +08:00
mischa
86064080f9 breaking: NetworkTransform renamed to NetworkTransformUnreliable for consistency 2023-06-15 15:27:33 +08:00
mischa
2c075c94ad wat 2023-06-15 15:10:38 +08:00
mischa
128da59c76 remove duplicate NetworkRigidbody scripts 2023-06-15 15:09:03 +08:00
mischa
627db15d4a NetworkTransform: moved all related scripts into one NetworkTransform folder 2023-06-14 17:57:28 +08:00
mischa
7e0e02f5d8
perf: NetworkRigidbody Reliable/Unreliable via NetworkTransform for smooth interpolation (#3510)
* RB

* fix clientauthority warning

* reset iskinematic and add a player to try local sync

* delete red ball, fix

* spawns multiplayer

* sc

* textmesh

* better

* better

* reset latency sim

* NetworkRigidbody folder

* syntax

* fix rese tflags

* 2D
2023-06-14 11:24:18 +02:00
mischa
8cd13328ca fix: NetworkBehaviourInspector 'had no target' warning 2023-06-14 17:21:45 +08:00