mischa
9aba125566
BilliardsPredicted: fix prefab script references
2023-08-31 11:08:16 +02:00
mischa
34d3777bc3
BilliardsPredicted: script naming
2023-08-31 11:06:36 +02:00
mischa
ff56210a36
feature: Threaded Transport & Threaded KCP ( #3582 )
...
* Tools: ThreadLog for thread safe logging in Unity builds
* events
* move folder
* WorkerThread & tests
* ConcurrentPool & Tests
* ConcurrentNetworkWriterPool & Tests
* ThreadedTransport empty
* syntax
* server part
* client part
* separate queues and updates
* separate events for strong typing
* virtual awake
* fix & support uri
* threaded early/late
* threaded kcp!
* private
* simplify
* use threaded callbacks
* active flags
* enabledcopy
* fix ids
* fix onsend
* fix disco param
* fix segment copy
* fix
* comment
* deadlock prevention
2023-08-29 12:57:55 +02:00
JesusLuvsYooh
4405082d4b
Example: Couch Co-Op ( #3589 )
2023-08-25 14:15:49 +08:00
mischa
9a4e317874
Examples: BilliardsPredicted. copy of Billiards demo, to apply prediction features onto in the future.
2023-08-17 22:11:41 +02:00
mischa
b7fad3e672
Billiards Demo: create prefab from table in hierarchy
2023-08-16 18:36:44 +02:00
mischa
5fba72dc3c
Billiards Demo: apply red changes to prefab
2023-08-16 18:36:07 +02:00
mischa
d8bb5ec15e
Billiards Demo: move indicator into white ball prefab for ease of use
2023-08-16 18:33:15 +02:00
mischa
b0b6d351b9
Billiards Demo: fix materials
2023-08-16 18:30:09 +02:00
mischa
463028260f
Billiards demo: update namespace
2023-08-16 18:02:09 +02:00
mischa
50e6d5f890
feature: Multiplayer Billiards demo ( #3583 )
2023-08-13 09:54:21 +02:00
mischa
db241bb413
breaking: NetworkReader/Writer Read/WriteBytesAndSizeSegment renamed to Read/WriteArraySegmentAndSize for clarity.
2023-08-12 19:13:15 +04:00
mischa
e799b08303
syntax
2023-08-12 19:08:15 +04:00
mischa
4d7c5b6e41
Reader/Writer: sort WriteBytes(AndSize) functions
2023-08-12 19:05:20 +04:00
mischa
f05df29639
NetworkIdentity: don't need to show assetId in Inspector
2023-08-12 18:59:24 +04:00
mischa
2a29f6e686
NetworkManager: improve warning about player prefab in spawnable prefabs list
2023-08-11 22:16:13 +04:00
mischa
684a61c964
script icons
2023-08-10 18:07:37 +04:00
mischa
2e1e3bfd9c
assign missing icon
2023-08-08 16:40:59 +08:00
mischa
6de9448c4a
small cleanups
2023-08-08 16:34:24 +08:00
mischa
877b249add
MIRROR_81_OR_NEWER
2023-08-08 16:32:59 +08:00
JesusLuvsYooh
10badbe21c
Adjusted UI scaling in new TanksCoop example. ( #3579 )
2023-08-06 10:15:42 +08:00
mischa
2365d301e1
SimpleWeb: minimize logging hot path allocations
2023-08-05 13:47:42 +08:00
mischa
d7757e95f2
perf: VarInt compression performance improvements ( #3578 )
...
* perf: VarInt compression performance improved by writing multiple bytes at once
* merge byte shifting
* this too
2023-08-05 07:13:16 +02:00
mischa
cd390bfce1
VarInt: tests now cover accidentally duplicating bytes
2023-08-04 19:47:12 +08:00
mischa
9d0e90f484
perf: remove O(N) ClearDirtyComponentsDirtyBits calls in NetworkServer.Broadcast() and NetworkClient.Broadcast() ( #3575 )
...
* perf: remove O(N) ClearDirtyComponentsDirtyBits calls in NetworkServer.Broadcast() and NetworkClient.Broadcast()
* only for delta [imer]
2023-08-03 14:01:35 +02:00
mischa
594a0f5c79
Examples: added BenchmarkIdle demo to test with 80% idle objects
2023-08-03 12:34:17 +08:00
mischa
e45c8e2e37
typo
2023-08-03 12:09:40 +08:00
JesusLuvsYooh
d2c475409f
feature: NetworkTransform WorldScale option ( #3565 )
...
* NT WorldScale option DRAFT - Will test, tidy and comment tomorrow.
Currently NT is local, and in some cases world is needed.
* Updated tooltip etc
All tested, using tanks example, and dragging a player tank into empty gameobject, then this gameobjcets position/rotation/scale and hierarchy changing live during gameplay. Switching to world bool fixes any problems caused by that.
* Enum dropdown, rather than bool as requested.
* Ternary shortcuts
* tab
* adjustments
* better
* cleanup
* force disable world scale
---------
Co-authored-by: mischa <info@noobtuts.com>
2023-08-02 08:21:33 +02:00
mischa
c077b53324
NetworkClient: improve 'did not find target for sync message' warning
2023-08-01 23:19:56 +08:00
mischa
7898b559b9
fix: SimpleWebTransport conditionals removed so users can see error messages
2023-08-01 11:53:43 +08:00
mischa
e92e91dcfd
kcp2k V1.37 [2023-07-31]
...
- fix : #47 KcpServer.Stop now clears connections so they aren't carried over to the next session
- fix: KcpPeer doesn't log 'received unreliable message while not authenticated' anymore.
2023-07-31 18:10:23 +08:00
mischa
e4304bfed6
feature: HistoryBounds MVP ( #3563 )
...
* readme, folders
* HistoryBounds.Insert placeholder and test
* Insert: naive implementation
* easier
* simple benchmark
* move into lag comp
* benchmark improvements
* deterministic benchmark
* tests: revisit coverage
* syntax
* HistoryBounds data structure - wip
* Reset
* oops
* insert in structure
* historyBounds.total
* comment
* test
* comments
* tests: insertfar
* simplify insertion; only recalculate when removed
* fix comment
* recalculate every nth
* benchmark simplified
* benchmark variant
* BUCKETS
* perf: use (min, max) bounds representation internally to avoid Unity's Bounds.Encapsulate conversion overhead
* HistoryCollider component WIP
* ...
* steps
* things
* gizmo
* syntax
* unused
* child collider
* counter rotate
* warning
* detect scale changes
* syntax
* Unity 2019 support
2023-07-31 12:38:42 +08:00
JesusLuvsYooh
593226b02c
Tanks co-op example, take control of vehicles via Mirrors Authority assigning feature. ( #3564 )
2023-07-30 17:06:14 +08:00
mischa
28859fb84a
fix: NetworkReader ReadBytes/Array<T>/List<T> allocation limit to prevent ClientToServer [SyncVar] allocation attacks [credit: James] ( #3562 )
...
* fix: NetworkReader.ReadArray: remove misleading 'length > reader.Remaining' check since not all arrays are byte arrays
* fix: NetworkReader AllocationLimit to prevent ClientToServer [SyncVar] allocation attacks [credit: James]
* ReadBytes: check allocation limit
* ReadList: check allocation limit
* ReadArray: check allocation limit
* ReadTexture2D: check allocation limit
* limit as count
* writer checks
* test wip
* throw
* add test
* test
2023-07-27 10:27:00 +02:00
mischa
120bdcb855
remove unused import
2023-07-27 13:39:09 +08:00
mischa
d4de45c374
comment
2023-07-27 13:32:06 +08:00
mischa
53b0258904
NetworkWriter: clean up old UIntDouble comments
2023-07-27 13:08:23 +08:00
mischa
a91f3a88c3
comments
2023-07-27 12:32:19 +08:00
mischa
7b2427ce76
more comments
2023-07-27 12:27:38 +08:00
mischa
c81ce3ec26
NetworkReader/Writer Read/WriteList: comments
2023-07-27 12:26:59 +08:00
mischa
d2b6cfdc2a
NetworkWriter: syntax
2023-07-27 12:03:58 +08:00
mischa
9311ef3523
fix: NetworkConnection "cannot send packet larger than ..." message now includes the message type which was too large. ( #3560 )
2023-07-24 06:08:55 +02:00
mischa
871a08c266
resaved test prefabs
2023-07-22 21:59:29 +08:00
mischa
6830a6e52c
fix: NetworkMessages.MaxContentSize now considers channelId instead of always assuming reliable
2023-07-22 21:59:07 +08:00
mischa
71f64c70f1
feature: bring back NetworkServer.disconnectInactiveConnections ( #3556 )
2023-07-21 06:11:14 +02:00
mischa
adee4ad140
fix: remove redundant RPC buffering. saved bandwidth, but introduced data races, complexity, extra buffer copies [credit: James, imer] ( #3497 )
2023-07-20 09:10:00 +02:00
mischa
d7fbee9d50
fix: NetworkIdentity.AssignAssetId() is now saved properly. fixes a bug where duplicated prefabs and prefab variants would still have the original prefab's assetId on disk, even though the Inspector showed the proper one.
2023-07-20 14:29:40 +08:00
mischa
ac6a881f1b
fix: NetworkTime RTT now checks for malicious timestamps from the future
2023-07-19 19:24:05 +08:00
mischa
e45bfb47ab
Compression: remove unnecessary QuaternionElement function
2023-07-19 13:15:40 +08:00
mischa
7e28e4ea02
Compression: more obvious TenBitsMax representation
2023-07-19 12:59:51 +08:00
mischa
483006eadc
feature: NetworkConnectionToClient.rtt via Ping & Pong Messages ( #3545 )
...
* NetworkConnectionToClient: send Ping message every PingFrequency
* breaking: NetworkPing/PongMessage .clientTime renamed to .localTime because it'll be used in both directions
* Server->Client->Server Ping/Pong messages and rtt
* don't ping in host mode
* adjust tests
* TODO
2023-07-18 11:19:12 +02:00
mischa
398d2e6d2c
Examples: default send rate increased from 30 Hz to 60 Hz for remaining examples
2023-07-18 16:58:05 +08:00
mischa
8164018483
perf: default send rate increased from 30 Hz to 60 Hz for users to get better initial results
2023-07-18 16:54:49 +08:00
mischa
82c09850da
Tanks demo: increase send rate from 30 Hz to 120 Hz to avoid rtt being too high. reduces rtt from ~30 ms to ~8ms.
2023-07-18 16:52:22 +08:00
mischa
f6cf32ee8d
Lag Compensation demo: fix warning
2023-07-18 16:10:58 +08:00
mischa
70c34ecf5d
NetworkBehaviour.OnValidate: GetComponentInParent(bool) 2020 support (credits FakeByte)
2023-07-18 15:37:04 +08:00
mischa
27e2238d0b
typo
2023-07-18 15:14:26 +08:00
mischa
8b6364bb76
NetworkIdentity: correct GetComponentInParent explanations (credit: FakeByte)
2023-07-18 14:49:26 +08:00
mischa
6d4e460f87
NetworkIdentity: expose AssetGuidToUint in builds
2023-07-18 14:44:17 +08:00
mischa
4ec80368f6
fix: NetworkBehaviour.OnValidate can't find parent NetworkIdentity because both the Unity define and GetComponentInParent() are broken in 2023.3 LTS.
2023-07-18 14:33:34 +08:00
mischa
0315fb3345
fix: Tanks demo: replace Turret obsolete NetworkTransform with NetworkTransformUnreliable component
2023-07-18 14:09:09 +08:00
mischa
fcd3a6b91b
perf: remove some unnecessary inlining to optimize instruction cache
2023-07-18 13:24:02 +08:00
mischa
0862b9b99f
NetworkIdentity: expose AssetId to Guid translation function
2023-07-10 12:53:28 +08:00
Robin Rolf
39211f9002
fix: 2019 tests work again ( #3547 )
2023-07-09 12:22:59 +08:00
mischa
629e50e4f9
fix: NetworkBehaviour OnValidate #ifdef adjusted for Unity 2020.3.19 support
2023-07-08 14:33:39 +08:00
mischa
f62b9a5a24
improve error message for #3525 for cases where the [SyncVar] is named 'value'
2023-07-06 20:03:01 +08:00
mischa
468192b046
fix NetworkIdentityTests by applying the workaround for #3525
2023-07-06 20:01:31 +08:00
mischa
acf67dddb0
fix : #3525 by explaining the solution in the Error message.
2023-07-06 19:59:16 +08:00
mischa
7c86f6a129
Re-enable the failing tests
2023-07-06 19:47:29 +08:00
mischa
69647f26a1
NetworkClient OnGUI: better rtt display
2023-07-06 17:11:20 +08:00
mischa
59e04f7902
breaking: NetworkTime.PingFrequency renamed to PingInterval. Makes it more obvious that we use it as interval, not as frequency in Hz.
2023-07-06 16:45:11 +08:00
mischa
d64c5fb61b
fix PrepareToSpawnSceneObjects tests after recent fix
2023-07-06 16:45:03 +08:00
mischa
a463d48681
NetworkTime: more readable ping interval check
2023-07-06 16:33:08 +08:00
James Frowen
08fa0269de
fix : #3538 calling unspawn on scene objects in DestroyOwnedObjects ( #3542 )
...
* fix: calling unspawn on scene objects in DestroyOwnedObjects
fixes: https://github.com/MirrorNetworking/Mirror/issues/3538
* Update NetworkConnectionToClient.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-07-06 09:59:28 +02:00
James Frowen
51c7162af7
fix: PrepareToSpawnSceneObjects checks netId instead of activeSelf [ fixes : #3541 ] ( #3543 )
...
* fix: fixing PrepareToSpawnSceneObjects not added enabled objects
fixes: https://github.com/MirrorNetworking/Mirror/issues/3541
Should be safe to remove this extra check complete, it is safe to add spawned object to `spawnableObjects`. For now this just changes it to NetId to ensure that the object really is unspawned and not just enabled
* Update NetworkClient.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-07-06 09:56:23 +02:00
mischa
110625b102
feature: Lag Compensation V1 ( #3534 )
...
* Lag Compensation Example based on Snapshot Interpolation example
* rename scene
* increase latency
* update scripts
* instructions
* better
* rename to rollback
* rename scene
* rebase
* rename to LagComp
* collider, onclick
* CmdClick
* flash color
* cleanup
* LagCompensationSettings
* caputre in interval
* comment
* syntax
* catpure, comp
* ns
* stuff
* source
* syntax
* naming
* history and draw history
* adjust
* cleanups
* tests
* sample and tests
* simplify tests
* out interpolation factor t
* tostring
* show result duration
* sample and interpolate
* fix
* logs
* better gizmos
* store size
* EstimateTime
* demo: estimate time
* estimation tests
* perf: Queue instead of List
* comment
* syntax
* cleaner
* cleanup
* syntax
* comment
* DrawGizmo(s)
* syntax
* extrapolation tests
* fix insert and test
* extrapolation
* fix extrapolation out values
* comments
* TODO
* TODO
2023-07-05 12:08:20 +02:00
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
mischa
e5be10ff71
NetworkTransform: show Gizmos as WriteCube instead of solid Cube for easier visual debugging
2023-06-13 12:55:07 +08:00
mischa
f72d35987a
Rigidbody Example: gray background so we can see overlays easier
2023-06-13 11:20:30 +08:00
mischa
62503601af
Rigidbody Example: show time interpolation GUI
2023-06-13 11:20:30 +08:00
mischa
f89b9cbfae
RigidbodyPhysics Example: fix missing component warnings
2023-06-13 11:20:30 +08:00
mischa
dbe8a37bcd
fix: Weaver runtime fuse to ensure weaving succeeded before starting Server/Client ( #3509 )
...
* fix: Weaver runtime fuse to ensure weaving succeeded before starting Server/Client (#3506 )
* WeaverFuse Core/ and Tests/
* runtime safety checks
* weaver
* cleanups
* remove log
* comments updated
* WeaverTypes variant
* update comment
* comment updated
* more accurate errors
* host check
* better
* better logs
* redundabt
* fix 2019 support
2023-06-12 17:57:58 +02:00
mischa
f5fa952937
Snapshot Interpolation Example: README
2023-06-12 23:43:19 +08:00
mischa
278f44673d
CompilationFinishedHook: add explanation
2023-06-11 16:52:34 +09:00
mischa
30437a934f
fix NetworkClientTests for Unity 2019
2023-06-11 16:42:31 +08:00
mischa
afd275ad87
NetworkMessages.WrapHandler: improve log message to make it easier to search for 'Disconnect' in logs
2023-06-11 16:10:00 +09:00
mischa
e58e47fc47
fix: NetworkClient unbatcher is now reset in host mode connect as well [credit: BigBoxVR]
2023-06-11 08:27:16 +02:00
mischa
1e199caab0
Unbatcher: readonly fields
2023-06-11 09:06:07 +09:00
mischa
6be1a25338
fix: KcpServer.Stop now clears connections so they aren't carried over to the next session
2023-06-10 21:33:55 +09:00
James Frowen
bd66be3d1c
fix: fixing use of new c# in 2020 ( #3507 )
...
* fix: fixing use of new c# in 2020
* fixing doc comment
2023-06-09 14:09:16 -04:00
James Frowen
176a2d3b66
feat: adding option to get Ip behind reverse proxy ( #3505 )
...
* feat: adding option to get Ip behind reverse proxy
When running behind a reverse proxy the IP endpoints will be that of the reverse proxy, not the client.
Reverse proxies like Nginx set the ip if the host in a http header, the server can read this header during the handshake and store it so it knows the IP address of the client
* feat: adding method to get request
allows users to get other headers if they need to
* caching remote address
* fix and simplify
* inlining extra var
* string interpolation
* changing request log message to info
* adding GET back in inside ReadToEndForHandshake
* updating log message
* max split 2
* returning ipv4 address
* checking if address is ipv4
* adding using
* fixing maping
2023-06-09 09:50:41 -04:00
mischa
220937cc4a
MIRROR_79_OR_NEWER
2023-06-08 10:38:16 +09:00
mischa
aaaa62e9c9
kcp2k V1.36 [2023-06-08]
...
- fix : #49 KcpPeer.RawInput message size check now considers cookie as well
- kcp.cs cleanups
2023-06-08 10:31:26 +09:00
Robin Rolf
37d762c2c3
fix: Test prefab loading might not cause log ( #3502 )
2023-06-07 19:04:09 +08:00
Robin Rolf
f11a7b44fe
fix: failing NetworkClientTests ( #3500 )
2023-06-07 17:21:51 +08:00
JesusLuvsYooh
f0005f0021
Changed default NT BRM to 3 ( #3496 )
...
5 (the previous default) covers really bad pings in return for noticeable delay. However, not every game should have this as their default. 1 being almost instant movement for minimal smoothing (could be best for VR and other uses), from testing 3 is a nice balanced result.
2023-06-05 06:18:54 +02:00
JesusLuvsYooh
1b6bb1e28a
NT-UR Example presets ( #3494 )
...
Tested on tanks example, parent and child turret.
Scenarios were regular localhost, then latency sim defaults (200ping, 2% loss etc) and bad connection (500 ping, 5% loss etc), along with personal experience of the settings on NT thee 3 presets should cover most peoples scenarios.
2023-06-01 12:37:13 +02:00
mischa
f84a385212
fix: Disallow Child-NetworkIdentities in Scene objects ( #3492 )
...
* fix: Disallow Child-NetworkIdentities in Scene objects
* better
2023-05-29 12:05:19 +08:00
mischa
d74e61298e
fix : #3485 Weaver now skips protected fields (Credit: James) ( #3493 )
...
* fix : #3485 Weaver now skips protected fields
* simplify
2023-05-27 06:36:05 +02:00
mischa
22134470ed
fix Unit tests
2023-05-27 11:47:22 +08:00
mischa
3619be494a
feature: allow NetworkBehaviour components in children. solves #2276 ( #3486 )
...
* feature: allow child NetworkBehaviour components in children
* Tanks demo: move Turret NetworkTransform to child
* NT TODO
* RequireInParents NI
* NetworkAnimatore allow in children
* call base onvalidate
* Add OnValidate to Script Template
* fix for pre-2020.3 Unity
* MirrorTest: CreateNetworked with NetworkBehaviour in children
* Tests: child networkbehaviours
---------
Co-authored-by: MrGadget1024 <9826063+MrGadget1024@users.noreply.github.com>
2023-05-27 08:25:53 +08:00
mischa
26e83ce645
fix: NetworkBehaviour SendRPCInternal error message fixed. This can happen if an RPC is called after shutting down the server - which doesn't mean that it was called on a client.
2023-05-25 11:16:06 +08:00
JesusLuvsYooh
e0ae55a971
Update NetworkRoomPlayer.cs ( #3490 )
2023-05-19 19:51:50 +08:00
JesusLuvsYooh
4c6e4e2bd0
NetworkTransform tooltips need use-case explanations. ( #3481 )
...
* Removed obsolete comment.
* Tooltip explanations 1
2023-05-19 19:51:27 +08:00
mischa
bf5cd97e69
fix : #3482 Weaver Generic 'out' parameter IL2CPP build failures [credit: JamesDev]
2023-05-14 11:47:05 +08:00
MrGadget1024
22675f40cf
NetworkTransform - syntax
2023-05-09 03:01:14 -04:00
MrGadget1024
b7bf117378
NetworkTransform - syntax
2023-05-09 02:59:35 -04:00
ninjakickja
337a0affee
fix #3478 - Changed sendIntervalCounter increment logic ( #3480 )
...
Changed sendIntervalCounter logic to fix the issue where if sendIntervalMultiplier = 1, NT will send every frame instead of every send interval.
This is due to sendIntervalCounter being initialised to 1 instead of 0, after NT has triggered it's send.
2023-05-09 06:57:09 +02:00
Louis Bailleau
8a0accc60b
breaking: NetworkDiscovery ServerFoundUnityEvent now supports custom ServerResponse types
2023-05-08 03:59:15 +02:00
MrGadget1024
09496652b7
fix(SimpleWebTransport): fixed ClientUseDefaultPort default
2023-05-04 17:07:55 -04:00
James Frowen
f200b907ac
feat(SimpleWebTransport): adding option to set server and client port different ( #3477 )
...
* feat(SimpleWebTransport): adding option to set server and client port different
When running websocket server behind reverse proxy client should connect via port 80 or 443. the reverse proxy should then forward requests to the ServerPort running on localhost.
* Update Assets/Mirror/Transports/SimpleWeb/SimpleWebTransport.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-05-04 04:59:47 +02:00
mischa
0f41aa7a3e
NetworkBehaviour SendCommandInternal: shorter logs
2023-04-29 10:52:07 +09:00
mischa
4193b5401e
fix : #3409 - NetworkTime now always uses unscaled time as double. Forgot to push the commit for the previous commit's PR
2023-04-24 20:09:53 +08:00
mischa
754a98fd71
fix : #3409 NetworkTime now always uses ( #3475 )
2023-04-22 05:12:31 +02:00
mischa
58e7915952
Tests: NetworkBehaviourMock component with call counters for reuse. Tests don't need to manually define call counters anymore.
2023-04-21 14:34:22 +08:00
mischa
b43d920572
Tests: NetworkIdentity tests split into multiple files
2023-04-21 14:14:30 +08:00
mischa
005d8384f4
Tests: NetworkClient namespace changed
2023-04-21 14:03:07 +08:00
mischa
20cf67342d
Tests: NetworkTransform namespace for grouping in test runner
2023-04-21 14:01:33 +08:00
mischa
b33d3bb924
Tests: NetworkReaderWriter namespace for grouping in test runner
2023-04-21 14:00:57 +08:00
mischa
ce0b8eabd9
Tests: NetworkMessages namespace for grouping in test runner
2023-04-21 13:58:51 +08:00
mischa
38dd2ae960
Tests: NetworkManager namespace for grouping in test runner
2023-04-21 13:55:30 +08:00
mischa
1012ca0dd6
Tests: NetworkServer namespace for grouping in test runner
2023-04-21 13:54:43 +08:00
mischa
814c5c404c
Tests: NetworkIdentities namespace for grouping in test runner
2023-04-21 13:37:18 +08:00
mischa
8b0020f10c
Tests: NetworkConnections namespace for grouping in test runner
2023-04-21 13:34:47 +08:00
mischa
14146e61a2
Tests: NetworkClient namespace for grouping in test runner
2023-04-21 13:33:44 +08:00
mischa
0d49bba308
Tests: NetworkBehaviours namespace for grouping in test runner
2023-04-21 13:31:20 +08:00
mischa
eea2099a2d
Tests: InterestManagement namespace for grouping in test runner
2023-04-21 13:29:41 +08:00
mischa
9da3e3fa23
Tests: remove unused usings
2023-04-21 13:28:29 +08:00
mischa
8151a4d8f8
Tests: fix namespace for Rpcs
2023-04-21 13:27:51 +08:00
mischa
e47296194f
Tests: RemoteAttributeTest namespace renamed to Rpcs
2023-04-21 12:20:25 +08:00
mischa
17811668ab
Tests: add missing dependency after recent rename
2023-04-21 12:19:12 +08:00
mischa
d9ba49fa4b
Tests: SyncCollections namespace for grouping in test runner
2023-04-21 12:18:43 +08:00
mischa
0c34dc0c7f
Tests: SyncVars namespace for grouping in test runner
2023-04-21 12:17:50 +08:00
mischa
6e372b51fb
Tests: Transports namespace for grouping in test runner
2023-04-21 12:16:51 +08:00
mischa
5b08993e62
Tests: Tools namespace for grouping in test runner
2023-04-21 12:16:23 +08:00
mischa
b9e4484215
Tests: NetworkLoop subfolder
2023-04-21 12:05:49 +08:00
mischa
387cd2e0e6
Tests: NetworkTransform subfolder
2023-04-21 12:05:26 +08:00
mischa
5d211ea830
Tests: SnapshotInterpolation subfolder
2023-04-21 12:05:10 +08:00
mischa
d2e60283b3
Tests: StructMessagesTests moved to NetworkMessages subfolder
2023-04-21 12:04:40 +08:00
mischa
d694163a14
Tests: FieldsInBaseClasses moved to NetworkReaderWriter folder
2023-04-21 12:04:04 +08:00
mischa
8696a4f9cd
Tests: OverloadMethodTest moved to NetworkMessages subfolder
2023-04-21 12:03:09 +08:00
mischa
24069ab8a2
Tests: add comment
2023-04-21 11:27:26 +08:00
mischa
5b0c9b8425
syntax
2023-04-21 11:26:15 +08:00
mischa
b50a762e1a
Tests: CustomRWTest renamed
2023-04-21 11:25:11 +08:00
mischa
1b906a97fa
Tests: CustomRWTest renamed
2023-04-21 11:24:28 +08:00
mischa
e60df7c0dc
Tests: add comment
2023-04-21 11:21:28 +08:00
mischa
dedcab4402
Tests: CollectionWriterTests moved to NetworkReaderWriter folder
2023-04-21 11:10:24 +08:00
mischa
c3193ab42b
syntax
2023-04-21 11:08:04 +08:00
mischa
1601960b53
Tests: AttributeTests subfolder; split up in multiple files; add comments
2023-04-21 11:06:37 +08:00
mischa
d50594db4e
Tests: moved file
2023-04-20 22:11:59 +08:00
mischa
ea9f258ceb
Tests: moved file
2023-04-20 22:10:32 +08:00
mischa
c6dd55bd69
Tests: NetworkMessages subfolder
2023-04-20 22:10:10 +08:00
mischa
8b3c298a4a
Tests: NetworkManager subfolder
2023-04-20 22:09:39 +08:00
mischa
fefdc63341
Tests: NetworkConnection subfolder
2023-04-20 22:08:51 +08:00
mischa
626978c954
Tests: NetworkServer moved to subfolder
2023-04-20 22:08:22 +08:00
mischa
5519c76dab
Tests: NetworkIdentity subfolder
2023-04-20 22:06:55 +08:00
mischa
afd0f42673
Tests: NetworkClient subfolder
2023-04-20 22:06:25 +08:00
mischa
3580ae7416
Tests: NetworkBehaviour subfolder
2023-04-20 22:05:45 +08:00
mischa
a7105220c6
Tests: ReaderWriter folder renamed
2023-04-20 22:05:08 +08:00
mischa
c6aa694f34
Tests: CompressionTests moved to subfolder
2023-04-20 22:01:49 +08:00
mischa
a97e71ee3f
Tests: ReaderWriter subfolder
2023-04-20 21:57:00 +08:00
mischa
a9210b4fb2
Tests: merged RemoteTestBase into FieldsInBaseClasses (only place where it was used)
2023-04-20 21:54:49 +08:00
mischa
937177941b
Tests cleanup: Transports subfolder
2023-04-20 21:53:24 +08:00
mischa
06c096242c
Tests cleanup: Grid2D tests moved to Interest Management subfolder
2023-04-20 21:51:35 +08:00
mischa
15b1a7610c
Tests cleanup: Interest Management tests moved to subfolder
2023-04-20 21:51:07 +08:00
mischa
1b68f4fef7
Tests cleanup: SyncVar tests moved into SyncVars/ folder
2023-04-20 21:49:26 +08:00
mischa
93ca265083
Tests cleanup: Tools tests moved into Tools/ folder
2023-04-20 21:47:38 +08:00
mischa
8fade6e27e
Tests cleanup: SyncList/Set/etc. tests moved into SyncCollections/
2023-04-20 21:45:25 +08:00
mischa
9ffe306ae1
Tests cleanup: Rpc tests moved into Rpcs/ folder
2023-04-20 21:43:12 +08:00
mischa
4e5d0b41b1
Tests: renamed ClientSceneTests to NetworkClientTests. ClientScene was merged with NetworkClient a long time ago.
2023-04-20 21:39:43 +08:00
JesusLuvsYooh
bafc1277c7
Updated ApplySnapshot ScriptTemplates ( #3472 )
2023-04-15 18:13:36 +02:00
mischa
619d1cc627
Benchmark example: random movement jumps to exact destination when finishing.
...
for completeness.
2023-04-14 14:59:20 +08:00
MrGadget1024
1fda794f95
fix(Examples): Updated to latest NT changes.
2023-04-11 01:37:14 -04:00
MrGadget1024
83a0593c98
fix(Examples): Updated to latest NT changes.
2023-04-11 01:14:23 -04:00
MrGadget
f23d044519
Moved sendIntervalMultiplier, timelineOffset, timeStampAdjustment, offset to NTBase ( #3442 )
...
* Moved sendIntervalMultiplier, timelineOffset, timeStampAdjustment, offset to NetworkTransformBase
* Update Assets/Mirror/Components/NetworkTransformBase.cs
* fix: NetworkTransformUnreliable: timeStampAdjustment, timelineOffset to fix 2s jitter after tab switching in webgl caused by NT snaps potentially arriving behind timeline snaps (#3441 )
* NT-U: Implemented sendIntervalMultiplier, timeStampAdjustment, timelineOffset
* Update Assets/Mirror/Components/NetworkTransformUnreliable/NetworkTransform.cs
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
* Resolved conflict
* Resolved conflict
* NT: send interval multiplier moved to Base
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-04-11 06:23:02 +02:00
mischa
4eeb703488
fix : #3455 TargetRpc(NetworkConnectionToClient) weaver generated InvokeTargetRpc now passes 'null' as connection parameter on clients. ( #3465 )
...
Logically, clients can never fill in a NetworkConnectionToClient parameter.
fixes compilation failing for TargetRpc(NetworkConnectionToClient) with IL2CPP builds.
2023-04-11 05:45:43 +02:00
vis2k
e3bd35a091
Tests: FakeNetworkConnection renamed to FakeNetworkConnectionToClient to make usage more obvious
2023-04-11 11:03:23 +08:00
Eunseop Shim
3420c88692
fix : #3457 Make NumSyncVars take parent class syncvars into account ( #3458 )
...
* Add tests
* Include parent class when counting syncvars
* SyncObject is unneeded
I was also testing SyncObjects and it turned out they were unaffected of this issue. I removed SyncObject from my tests but forgot to do so here.
* Remove host SyncVar hook guard test
* Update Assets/Mirror/Editor/Weaver/Processors/SyncVarAttributeProcessor.cs
* Update SyncVarAttributeProcessor.cs
* Update Assets/Mirror/Tests/Editor/SyncVarAttributeTest.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-04-11 04:32:31 +02:00
Meno000
e9597b70ac
KcpTransport: reconvert mapped ipv4->ipv6 addresses to ipv4 in ServerGetClientAddress ( #3460 )
...
* Update KcpTransport.cs
"::ffff:127.0.0.1" -> "127.0.0.1"
* Update Assets/Mirror/Transports/KCP/KcpTransport.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-04-11 04:18:00 +02:00
MrGadget
fb8ae6c228
feat(NetworkTransform): Added Send Interval Multiplier ( #3459 )
2023-04-11 04:15:27 +02:00
MrGadget1024
8b1796f0a3
NetworkManagerTemplate: comments
2023-04-10 16:26:33 -04:00
MrGadget1024
a30c85d389
fix(NetworkManagerTemplate): Updated OnServerError / OnClientError comments
2023-04-10 16:18:06 -04:00
MrGadget
bae0c37679
fix(NetworkManager): Try to avoid missing transport errors ( #3456 )
...
* fix(NetworkManager): Try to avoid missing transport errors
- If none assigned, tries to use first Transport available and warns user
- If none available, throws clear error to user what to do.
* improved error msg
2023-04-10 05:27:47 +02:00
vis2k
2cf3582922
comment formatting
2023-04-08 18:33:23 +08:00
vis2k
20b7e5326e
Weaver: update comments
2023-04-08 13:35:36 +08:00
Eunseop Shim
88170ed141
fix : #3447 make cached SyncVar fallback to original field value when there is no network context ( #3449 )
...
* Add Tests
* Fix tests relying on undefined behaviors
- GetSyncVarGameObjectOnClient()
The test relies on the behavior that GameObject SyncVar lookup will behave as client if both isServer and isClient is false.
The test is modified in a way that removes unnecessary object creation and uses a single object that is made sure it's context is client-side.
- TestSyncingAbstractNetworkBehaviour()
This test has been comparing null against null. The test is modified so it simulates each context better.
* Make cached SyncVar getters fallback on no network context
* Remove unnecessary assertions
Gone under my radar doing mindless copy & pasting
* Update Assets/Mirror/Core/NetworkBehaviour.cs
* Update Assets/Mirror/Core/NetworkBehaviour.cs
* Update Assets/Mirror/Core/NetworkBehaviour.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-04-08 06:00:09 +02:00
vis2k
c3b7fe66a1
kcp: forgot to remove a log message when sending unreliable messages
2023-04-07 10:40:49 +08:00
vis2k
b2bceecb2d
MIRROR_78_OR_NEWER
2023-04-06 11:58:28 +08:00
vis2k
d226d577c2
Telepathy implements PortTransport interface
2023-04-06 04:51:14 +02:00
vis2k
d62b80ec2d
SimpleWeb implements PortTransport interface
2023-04-06 04:51:14 +02:00
vis2k
9b102c0aa1
Kcp implements PortTransport interface
2023-04-06 04:51:14 +02:00
vis2k
0ff04c1cf0
feature: PortTransport interface
2023-04-06 04:51:14 +02:00
mischa
ee957f3fcd
fix: kcp2k V1.35. secure cookie to prevent UDP spoofing. fixes : #3286 ( #3445 )
...
* fix: kcp2k V1.35 [2023-04-05]
- fix: KcpClients now need to validate with a secure cookie in order to protect against
UDP spoofing. fixes:
https://github.com/MirrorNetworking/Mirror/issues/3286
[disclosed by IncludeSec]
- KcpClient/Server: change callbacks to protected so inheriting classes can use them too
- KcpClient/Server: change config visibility to protected
* credits
* credits
* link blog post
* 2019 compatibility
* Update Assets/Mirror/Transports/KCP/kcp2k/highlevel/KcpPeer.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
* Update Assets/Mirror/Transports/KCP/kcp2k/highlevel/KcpPeer.cs
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
---------
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2023-04-06 04:46:26 +02:00
vis2k
7889f3afaf
remove unused imports
2023-04-05 10:45:24 +08:00
MrGadget1024
35ec40ea60
fix(BasicExample): Revert unintended changes
2023-04-04 08:10:26 -04:00
MrGadget
12ebd7f722
fix: NetworkTransformUnreliable: timeStampAdjustment, timelineOffset to fix 2s jitter after tab switching in webgl caused by NT snaps potentially arriving behind timeline snaps ( #3441 )
...
* NT-U: Implemented sendIntervalMultiplier, timeStampAdjustment, timelineOffset
* Update Assets/Mirror/Components/NetworkTransformUnreliable/NetworkTransform.cs
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-04-03 18:39:01 +02:00
MrGadget1024
ae40fcbddd
fix(NetworkTransformReliable): Removed unused onlySyncOnChangeInterval
2023-04-03 12:31:17 -04:00
MrGadget1024
f7fe570c08
fix(SimpleWebTransport): Check hasDisposed in Connection.ToString
2023-04-03 10:20:51 -04:00
vis2k
1c8ea40a99
NetworkBehaviour.SendRpcInternal: simplify safety check and minimize indentation
2023-04-01 19:41:18 +08:00
vis2k
0268e1b9fe
perf: remove unused NetworkPongMessage.serverTime to save 8 bytes for every pong
2023-04-01 19:35:44 +08:00
vis2k
615bd1125e
syntax
2023-04-01 19:30:19 +08:00
vis2k
d4a5bd71d0
Mathd: Clamp01 reuses Clamp
2023-04-01 11:45:15 +08:00
vis2k
db923a486e
ExponentialMovingAverage: alpha changed from float to double for better precision
2023-04-01 11:43:49 +08:00
vis2k
5fe306fdc1
AccurateInterval: syntax
2023-04-01 11:40:29 +08:00
vis2k
a637b831d7
remove unused using
2023-04-01 11:24:21 +08:00
vis2k
2ea568f404
Batcher: readonly .batches
2023-04-01 11:17:37 +08:00
MrGadget1024
31fa8a4b3c
fix(SimpleWebTransport): Default sslProtocols to Tls12
2023-03-29 11:50:25 -04:00
MrGadget
40361f62bf
fix(NetworkServer): Don't disconnect on OnEntityStateMessage for object without authority ( #3439 )
2023-03-29 17:37:08 +02:00
MrGadget1024
b377d765ec
fix(Chat Example): moved playerNames HashSet to ChatAuthenticator
2023-03-28 13:13:17 -04:00
MrGadget1024
48b2ee638f
chore(SimpleWebTransport): formatting
2023-03-28 08:17:19 -04:00
MrGadget1024
8ce21b40b8
chore(SimpleWebTransport): formatting and syntax
2023-03-28 02:26:17 -04:00
MrGadget1024
22d4fb62bb
fix(SimpleWebTransport): Improved tooltips
2023-03-28 01:18:44 -04:00
MrGadget1024
484820e293
feat(SimpleWebTransport): Implemented ClientConnect(Uri uri)
2023-03-28 00:58:32 -04:00
MrGadget
238233da3f
fix(NetworkTransformeliable): fix offset and sendIntervalMultiplier ( #3438 )
...
* fix(NetworkTransformeliable): fix offset and sendIntervalMultiplier
* Removed unused using
* latest fixes and comments
* moved comments
* Update NetworkTransformReliable.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-03-28 05:06:52 +02:00
mischa
ae50522895
fix; NetworkTransformUnreliable now broadcasts in LateUpdate as well ( #3410 ) ( #3421 )
2023-03-28 04:59:26 +02:00
vis2k
527dda561a
revert previous commit NetworkTime modifications. keep TimeAsDouble
2023-03-27 10:56:13 +08:00
MrGadget
70e972aeb5
fix: Remove all usage of Time.timeAsDouble ( #3436 )
...
- Use NetworkTime.localTime everywhere for Unity 2019 LTS compatibility.
2023-03-26 04:32:44 +02:00
MrGadget
8a4cf9efd7
perf(SyncDictionary): Don't send value for OP_REMOVE ( #3435 )
2023-03-25 15:48:00 +01:00
MrGadget
41ae4833b8
feat(NetworkTransformReliable): Added SendIntervalMultiplier to optionally reduce bandwidth ( #3424 )
...
* NetworkTransformReliable - formatting for consistancy / legibility
* feat(NetworkTransformReliable): Added SendIntervalMultiplier
* fixed conflict
* formatting
* formatting
* formatting
* formatting
* formatting
* indention
* syntax
* syntax
* formatting
* syntax
* syntax
* Restored formatting changes
* one more formatting revert
* Update NetworkTransformReliable.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-03-25 12:51:09 +01:00
MrGadget1024
377f65a919
fix(FadeInOut): Added OnValidate
2023-03-22 11:05:29 -04:00
MrGadget
26bb7e4e09
perf(InterestManagement): Don't Rebuild Observers In OnDestroy ( #3430 )
...
* perf(SceneInterestManagement): Only RebuildSceneObservers in Update
Don't RebuildSceneObservers in OnDestroy...that will happen in Update.
Multiple objects could be destroyed in same frame and we don't
want to rebuild for each one...let Update do it once.
* perf(MatchInterestManagement): Only RebuildMatchObservers in Update
Don't RebuildMatchObservers in OnDestroy...that will happen in Update.
Multiple objects could be destroyed in same frame and we don't
want to rebuild for each one...let Update do it once.
* perf(TeamInterestManagement): Only RebuildMatchObservers in Update
Don't TeamInterestManagement in OnDestroy...that will happen in Update.
Multiple objects could be destroyed in same frame and we don't
want to rebuild for each one...let Update do it once.
* SceneInterestManagement: Add curentScene to dirtyScenes in OnDestroy
* MatchInterestManagement - add match to dirtyMatches
* TeamInterestManagement - add team to dirtyTeams
2023-03-22 15:11:31 +01:00
MrGadget1024
2d9a2c93a4
FadeInOut - added comment
2023-03-22 09:12:53 -04:00
MrGadget1024
1aedd8d7c0
fix(AdditiveLevels): FadeInOut more user friendly
2023-03-22 09:10:49 -04:00
MrGadget1024
e29325d450
removd logging
2023-03-21 14:57:04 -04:00
MrGadget1024
fef184704f
FadeInOut: Added GetDuration
2023-03-21 14:50:27 -04:00
MrGadget1024
6e2227dcbf
fix(Additive Levels): Improve FadeInOut timing
2023-03-21 13:24:34 -04:00
MrGadget1024
5c7de2b6e0
fix(Discovery Template): wrapped OnValidate with #if UNITY_EDITOR
2023-03-21 06:55:32 -04:00
MrGadget1024
f0d288be1b
Updated Discovery Template
...
- Added OnValidate and Start overrides
- Improved comments
2023-03-21 06:10:05 -04:00
MrGadget1024
343cfc1bad
Updated Discovery Example
2023-03-21 06:10:05 -04:00
MrGadget1024
199ee490e5
fix(Discovery): Updated Network Discovery
...
- Moved transport and OnServerFound to base class
- Consolidated Start in base class
- Virtual OnValidate in base class
- Better public field order
- Added missing tooltip
2023-03-21 06:10:05 -04:00
JesusLuvsYooh
069e417edc
Fix(InterestManagementBase): Disable feature fully, if component unticked. ( #3406 )
...
* Draft Awake->OnEnabled
Fix: InterestManagement still partially working when using Awake, OnEnabled fixes it.
* Updated commeents
* Dont ask.
2023-03-21 02:54:45 +01:00
vis2k
3f02534978
perf: NetworkBehaviour.syncInterval default set to 0 to send every NetworkServer.sendInterval. fixes #3292
2023-03-20 17:09:44 +08:00
mischa
30d7b5b3a8
fix : #3427 NetworKTransformReliable now has a timelineOffset to account for decoupled arrival of NetworkTime and NetworkTransform snapshots ( #3428 )
...
* fix : #3427 NetworKTransformReliable now has a timelineOffset to account for decoupled arrival of NetworkTime and NetworkTransform snapshots
* bool
2023-03-20 03:36:21 +01:00
vis2k
1a34614e4c
KcpClient/Server: change config visibility to protected
2023-03-19 11:31:39 +08:00
vis2k
dd50a43b9b
KcpClient/Server: change callbacks to protected so inheriting classes can use them too
2023-03-19 11:27:56 +08:00
vis2k
660b57ecb7
KcpPeer: fix log message.
2023-03-19 11:19:29 +08:00
MrGadget1024
638b3536a5
fix(NetworkAuthenticatorTemplate): Added missing overrides
2023-03-18 11:04:56 -04:00
MrGadget
4ce8b2a431
fix: Reader / Writer extensions for Unity structs with properties ( #3426 )
...
* fix: Reader / Writer extensions for Unity structs with properties
* removed blank lines
2023-03-18 09:10:53 +01:00
MrGadget1024
b8e7aa0567
Added DriftEMA, DeliveryTimeEMA, and RTT to NetworkClient OnGUI
2023-03-18 16:05:28 +08:00
vis2k
7d93d0156e
perf: snapshot interpolation default catchup speed increased to 2%, and slowdown speed increased to 4% to avoid jitter
2023-03-18 16:04:22 +08:00
MrGadget1024
ef86df8454
NetworkReaderExtensions - syntax
2023-03-16 15:26:11 -04:00
MrGadget
ff5115e04a
fix(NetworkManager): Call OnServerDisconnect for Host Client ( #3419 )
2023-03-16 13:27:49 +01:00
vis2k
a9b216d2e6
snapshot interpolation demo: vsync reminder. it's too easy to forget.
2023-03-16 19:23:53 +08:00
vis2k
d63af8d22c
Snapshot Interpolation Demo: add more buttons for testing
2023-03-16 18:31:06 +08:00
vis2k
be8857a509
TimelineClamp: add comments
2023-03-16 11:24:37 +08:00
vis2k
8d857de09b
kcp2k V1.34 [2023-03-15]
...
- Send/SendTo/Receive/ReceiveFrom NonBlocking extensions.
to encapsulate WouldBlock allocations, exceptions, etc.
allows for reuse when overwriting KcpServer/Client (i.e. for relays).
2023-03-15 13:00:37 +08:00
vis2k
69de3f0379
NetworkTransformUnreliable: syntax (early returns)
2023-03-14 17:18:27 +08:00
vis2k
5f1ec83cca
NetworkTransformUnreliable: UpdateClientInterpolation helper function
2023-03-14 17:17:33 +08:00
vis2k
6e142d8cc0
NetworkTransformUnreliable: UpdateServerInterpolation helper function
2023-03-14 17:16:54 +08:00
vis2k
255789bc57
NetworkTransformUnreliable: UpdateServerBroadcast helper function
2023-03-14 17:15:57 +08:00
vis2k
feab9041b4
NetworkTransformUnreliable: UpdateClientBroadcast helper function
2023-03-14 17:15:11 +08:00
vis2k
9b25758a4e
syntax
2023-03-14 17:13:37 +08:00
vis2k
73e953ee2a
perf: kcp2k V1.33
...
- perf: KcpServer/Client RawReceive now call socket.Poll to avoid non-blocking
socket's allocating a new SocketException in case they WouldBlock.
fixes https://github.com/MirrorNetworking/Mirror/issues/3413
- perf: KcpServer/Client RawSend now call socket.Poll to avoid non-blocking
socket's allocating a new SocketException in case they WouldBlock.
fixes https://github.com/MirrorNetworking/Mirror/issues/3413
2023-03-14 16:57:56 +08:00
MrGadget1024
f31529580b
Examples - Unity 2021 updates
2023-03-12 15:19:21 -04:00
MrGadget1024
1955587c9e
Room example Unity updates
2023-03-12 14:39:43 -04:00
MrGadget1024
c35b43bb2e
WebSocketServer - syntax
2023-03-12 14:21:23 -04:00
MrGadget1024
bfcef5563b
ClientHandshake -added log
2023-03-12 14:21:06 -04:00
MrGadget1024
8d348a75f6
WebSocketServer - Improved logging
2023-03-12 14:11:07 -04:00
MrGadget1024
8638ab96eb
SimpleWebServer - log ProcessMessageQueue overflow
2023-03-12 14:05:38 -04:00
MrGadget1024
d7315be32e
ServerSslHelper - added logging
2023-03-12 14:04:26 -04:00
MrGadget1024
cc6f4aa120
ClientHandshake - log Unexpected Handshake Response
2023-03-12 14:02:18 -04:00
MrGadget1024
46b30aafe0
SimpleWebClient - log ProcessMessageQueue overflow
2023-03-12 13:59:54 -04:00
MrGadget1024
724be4ffd1
RemoteStatistics - syntax
2023-03-12 13:36:54 -04:00
MrGadget1024
c7ddae1bc3
NetworkStatistics - move UI down
2023-03-12 13:32:42 -04:00
mischa
7137ace5fd
fix: NetworkTransformReliable fix jitter ( fixes : #3368 ) ( #3410 )
...
* ninja nt
* remove unused
* unused
* comments
2023-03-12 16:12:27 +01:00
vis2k
25ebb0620b
fix: NetworkTransformReliable Reset() now resets 'last' too
2023-03-12 23:08:49 +08:00
vis2k
844fe69e11
fix: SnapshotInterpolation.TimelineClamp uses Mathd.Clamp for Unity 2020 support
2023-03-12 22:50:43 +08:00
vis2k
cae12a43fc
Mathd.Clamp for Unity 2020 support
2023-03-12 22:50:13 +08:00
vis2k
53658a5886
fix: kcp2k V1.32 KcpPeer RawInput now doesn't disconnect in case of random internet noise
2023-03-12 11:07:26 +08:00
vis2k
8762167a13
Snapshot Interpolation demo: reuse SnapshotInterpolationSettings
2023-03-12 10:31:19 +08:00
mischa
2f68666683
breaking: expose NetworkClient's Snapshot Interpolation settings in NetworkManager ( #3411 )
2023-03-12 03:25:43 +01:00
vis2k
5d324d35f1
SnapshotInterpolation: better explain timeline clamp
2023-03-11 13:24:07 +08:00
vis2k
5a0c8269c8
remove unused code
2023-03-11 11:57:21 +08:00
vis2k
313c7a18cd
fix(SnapshotInterpolation): Added TimelineClamp ( #3402 )
2023-03-11 10:46:00 +08:00
vis2k
67aa480fdd
Snapshot Interpolation tests: check local timeline and fail early to prepare for clamping
2023-03-11 10:03:37 +08:00
MrGadget1024
712032a0aa
Formatting
2023-03-10 04:37:01 -05:00
vis2k
80b23f029d
feature: ExpontentialMovingAverage.Reset()
2023-03-10 17:33:25 +08:00
vis2k
b1e62cfac3
SnapshotInterpolation.Timescale: rename threshold parameters to absolute and update comment. because that's what they are.
2023-03-10 16:13:15 +08:00
vis2k
f62d68dbf3
comment
2023-03-10 16:05:47 +08:00
vis2k
fd63333563
SnapshotInterpolation: add explanation why timescale is calculated when inserting
2023-03-10 16:03:40 +08:00
vis2k
86505af92d
Snapshot Interpolation Demo: simulate moving timeline ahead
2023-03-10 14:52:31 +08:00
vis2k
20c2899e3d
Snapshot Interpolation Demo: simulate moving timeline behind
2023-03-10 14:52:29 +08:00
vis2k
60f021e543
Snapshot Interpolation Demo: simulate 1 fps
2023-03-10 14:51:13 +08:00
vis2k
da6c7180bb
CCU demo: readme added
2023-03-08 15:29:51 +08:00
vis2k
733e663d11
syntax
2023-03-08 14:22:58 +08:00
vis2k
0d471af61c
script icon
2023-03-08 10:31:40 +08:00
MrGadget1024
0cd06db1f2
NetworkTransform - formatting
2023-03-06 14:36:00 -05:00
MrGadget1024
4b34dc2fe8
breaking(NetworkManager): Removed obsolete OnServerError / OnClientError
...
BREAKING CHANGE: Removed obsolete OnServerError / OnClientError
2023-03-06 11:52:41 -05:00
MrGadget1024
788fd4df91
Revert "breaking(NetworkManager)!: Removed obsolete OnServerError / OnClientError"
...
This reverts commit 3f7c1af819
.
2023-03-06 11:50:37 -05:00
MrGadget1024
3f7c1af819
breaking(NetworkManager)!: Removed obsolete OnServerError / OnClientError
2023-03-06 09:16:49 -05:00
MrGadget1024
a74f8f9ea2
Revert "breaking!(NetworkManager): Removed obsolete OnServerError / OnClientError"
...
This reverts commit d45bd661ef
.
2023-03-06 09:13:48 -05:00
MrGadget1024
d45bd661ef
breaking!(NetworkManager): Removed obsolete OnServerError / OnClientError
2023-03-06 08:49:37 -05:00
vis2k
a0605ae651
kcp V1.31 [2023-03-05]
...
- KcpClient: Tick/Incoming/Outgoing can now be overwritten (virtual)
- breaking: KcpClient now takes KcpConfig in constructor instead of in Connect.
cleaner, and prepares for KcpConfig.MTU setting.
- KcpConfig now includes MTU; KcpPeer now works with KcpConfig's MTU, KcpServer/Client
buffers are now created with config's MTU.
2023-03-05 14:10:17 +08:00
vis2k
31b6f195ce
KcpTransport: config, server, client protected so inheriting classes can access them
2023-03-04 22:26:24 +08:00
vis2k
582a02eec8
KcpTransport: OnGUIStatistics helper function for easier OnGUI overwrites
2023-03-04 22:23:10 +08:00
vis2k
7b1d6fd412
KcpTransport: virtual Awake/OnValidate/OnGUI to allow inheritance more easily
2023-03-04 22:20:54 +08:00
vis2k
def24f8510
fix: NetworkLoop now only runs in play mode, not in edit mode
2023-03-04 19:33:19 +08:00
vis2k
8f66bd68ca
fix : #3392 NetworkLoop now checks if the function was already added before. fixes functions being added twice with Domain Reload disabled.
2023-03-04 19:29:39 +08:00
MrGadget
91014bd614
breaking: Remove NetworkClient.serverIP ( #3394 )
...
* breaking: Remove NetworkClient.serverIP
- If we're never going to set it to anything, no reason to have it.
- Transport has no mechanism to return anything for it
Host client hardcodes `address` to "localhost" in both LocalConnectionToServer and LocalConnetionToClient, so obsolete the former telling users to use the latter if they aren't already.
Users can get the endpoint from NetworkManager or Discovery, as they must be doing now since those work and serverIp does not.
* Update main.yml
* fix: kcp2p V1.30 (#3391 )
- fix: set send/recv buffer sizes directly instead of iterating to find the limit.
fixes: https://github.com/MirrorNetworking/Mirror/issues/3390
- fix: server & client sockets are now always non-blocking to ensure main thread never
blocks on socket.recv/send. Send() now also handles WouldBlock.
- fix: socket.Receive/From directly with non-blocking sockets and handle WouldBlock,
instead of socket.Poll. faster, more obvious, and fixes Poll() looping forever while
socket is in error state. fixes: https://github.com/MirrorNetworking/Mirror/issues/2733
* Shortened PingWindowSize to get a faster more accurate result. (#3395 )
* Shortened PingWindowSize to get a faster more accurate result.
Shortened PingWindowSize to get a faster more accurate result.
It taking too long to calculate the average may look bad to users
* Revert "Shortened PingWindowSize to get a faster more accurate result."
This reverts commit 0a5916b4dc
.
* Revert "Shortened PingWindowSize to get a faster more accurate result."
This reverts commit 0a5916b4dc
.
* Shortened PingWindowSize to get a faster more accurate result.
Shortened PingWindowSize to get a faster more accurate result.
It taking too long to calculate the average may look bad to users
* Shortened PingWindowSize to get a faster more accurate result.
Shortened PingWindowSize to get a faster more accurate result.
It taking too long to calculate the average may look bad to users, choosing 6 gives us an average of 3 results, where as the previous 10, would wait for 5, it should be a slight visual improvement.
* fix: Use PingWindowSize instead of hardcoded value (#3396 )
fix: Use PingWindowSize instead of hardcoded value
* KcpClient: Tick/Incoming/Outgoing can now be overwritten (virtual)
* RunUnityTests - Updated unityVersion
* fix: Write for non-spawned NB only writes 0 netId (fixes : #3399 ) (#3400 )
* Failing test for non-spawned NB writer/reader
* fix: Write for non-spawned NB only writes 0 netId
Instead of writing 0 and component index which does not match what the reader expects (it will stop reading netId is 0)
Fixes #3399
* breaking: Removed old Unity 2018 / 2019_3 compiler defines (#3397 )
- we only suppport Unity 2019.4.40 and later LTS releases.
BREAKING: Removed old 2018 / 2019 compiler defines
* RunUnityTests - try different test reporter
* RunUnityTests commented out Archive and Publish temporarily
* RunUnityTests - disable game-ci built-in test reporter
* RunUnityTests - cleanup
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
Co-authored-by: JesusLuvsYooh <57072365+JesusLuvsYooh@users.noreply.github.com>
Co-authored-by: vis2k <info@noobtuts.com>
Co-authored-by: Robin Rolf <imer@imer.cc>
2023-03-04 06:39:30 +01:00
MrGadget
bb2e7b2308
breaking: Removed old Unity 2018 / 2019_3 compiler defines ( #3397 )
...
- we only suppport Unity 2019.4.40 and later LTS releases.
BREAKING: Removed old 2018 / 2019 compiler defines
2023-02-28 16:11:40 +01:00
Robin Rolf
74f5339b09
fix: Write for non-spawned NB only writes 0 netId ( fixes : #3399 ) ( #3400 )
...
* Failing test for non-spawned NB writer/reader
* fix: Write for non-spawned NB only writes 0 netId
Instead of writing 0 and component index which does not match what the reader expects (it will stop reading netId is 0)
Fixes #3399
2023-02-28 16:10:49 +01:00
vis2k
eaea01caa6
KcpClient: Tick/Incoming/Outgoing can now be overwritten (virtual)
2023-02-26 14:29:15 +08:00
JesusLuvsYooh
3252dec547
fix: Use PingWindowSize instead of hardcoded value ( #3396 )
...
fix: Use PingWindowSize instead of hardcoded value
2023-02-25 09:56:29 -05:00
JesusLuvsYooh
4603bb1a4d
Shortened PingWindowSize to get a faster more accurate result. ( #3395 )
...
* Shortened PingWindowSize to get a faster more accurate result.
Shortened PingWindowSize to get a faster more accurate result.
It taking too long to calculate the average may look bad to users
* Revert "Shortened PingWindowSize to get a faster more accurate result."
This reverts commit 0a5916b4dc
.
* Revert "Shortened PingWindowSize to get a faster more accurate result."
This reverts commit 0a5916b4dc
.
* Shortened PingWindowSize to get a faster more accurate result.
Shortened PingWindowSize to get a faster more accurate result.
It taking too long to calculate the average may look bad to users
* Shortened PingWindowSize to get a faster more accurate result.
Shortened PingWindowSize to get a faster more accurate result.
It taking too long to calculate the average may look bad to users, choosing 6 gives us an average of 3 results, where as the previous 10, would wait for 5, it should be a slight visual improvement.
2023-02-25 11:11:56 +01:00
mischa
228a577683
fix: kcp2p V1.30 ( #3391 )
...
- fix: set send/recv buffer sizes directly instead of iterating to find the limit.
fixes: https://github.com/MirrorNetworking/Mirror/issues/3390
- fix: server & client sockets are now always non-blocking to ensure main thread never
blocks on socket.recv/send. Send() now also handles WouldBlock.
- fix: socket.Receive/From directly with non-blocking sockets and handle WouldBlock,
instead of socket.Poll. faster, more obvious, and fixes Poll() looping forever while
socket is in error state. fixes: https://github.com/MirrorNetworking/Mirror/issues/2733
2023-02-23 03:14:31 +01:00
MrGadget
a1db764b7c
Organize WeaverTypes ( #3393 )
...
* Organize WeaverTypes
- Put all NetworkBehaviors together
- Put Writer with Reader
- Put Remote things together
- moved ScriptableObjectType down
* moved NetworkClientConnectionReference up
2023-02-22 07:07:45 +01:00
MrGadget
69d5cf3c8f
breaking: AsmDef Updates ( #3388 )
...
* breaking: AsmDef Updates
- KcpTransport moved up
- SimpleWeb moved into folder
- AsmDef chains updated and simplified
* Reverted accidental change
* reverted accidental change
* Mirror.Tests - reverted ref removal
- needed for 2019 and 2020
2023-02-20 04:56:52 +01:00
Robin Rolf
cfe27a179b
fix: never use custom NB writers for SyncVars ( #3387 )
...
We always use a specific reader for NB syncvars, so if a custom defined writer handles data differently this leads to data mismatches.
Supporting custom readers for NB syncvars will just lead to too many edge cases and unexpected behaviour, so dont do it (see https://github.com/MirrorNetworking/Mirror/issues/2680#issuecomment-1435093212 for rationale).
Fixes #2680
2023-02-20 04:29:48 +01:00
Robin Rolf
94bb3690ae
fix: NetworkBehaviour SyncVar uses netId lookup ( #3386 )
...
* fix: NetworkBehaviour SyncVar uses netId lookup
Not only types derived from NetworkBehaviour
Fixes #2939
* Update Assets/Mirror/Editor/Weaver/Extensions.cs
* Update Assets/Mirror/Editor/Weaver/Processors/NetworkBehaviourProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/SyncVarAttributeProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/SyncVarAttributeProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/SyncVarAttributeProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Readers.cs
* Update Assets/Mirror/Editor/Weaver/Writers.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-17 12:09:53 +01:00
MrGadget1024
5784ff6d8a
script icons
2023-02-16 21:55:50 -05:00
MrGadget1024
4f1a1899aa
Extensions - updated comment
2023-02-16 09:07:55 -05:00
MrGadget1024
2f2a6907de
Extenstions - Added comment to GetStableHashCode
2023-02-16 09:04:43 -05:00
MrGadget1024
adafd484d7
Fixed log msg
2023-02-16 08:27:11 -05:00
MrGadget1024
e4281fe5bf
fix: fixed warning in test
2023-02-16 08:20:01 -05:00
MrGadget1024
9e0c59526c
fix: Extensions - Remove static StableHashes dictionary
...
- Now that all callers to GetStableHashCode are either one-timers or design-time (weaver) the dictionary is no longer needed.
2023-02-16 08:19:48 -05:00
Robin Rolf
5d6022ff19
Remove outdated comment ( #3385 )
2023-02-16 13:21:01 +01:00
Robin Rolf
8b7bc6858f
perf: Weave in pre-computed function hash for RPCs ( #3384 )
...
* perf: Weave in pre-computed function hash for RPCs
Instead of computing it at runtime for every call
See #3381 , #3377 and #3375
* Update Assets/Mirror/Editor/Weaver/Processors/CommandProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/RpcProcessor.cs
* Update Assets/Mirror/Editor/Weaver/Processors/TargetRpcProcessor.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-16 13:01:03 +01:00
Robin Rolf
b933dcbe1a
feat: InterestManagementBase ( #3379 )
...
* feat: InterestManagementBase
A interest management base class that allows more advanced interest management by bypassing the built-in HashSet checks via Rebuild overriding
* Update Assets/Mirror/Core/InterestManagementBase.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-16 12:57:31 +01:00
Robin Rolf
c2d834315c
cleanup: move observer HashSet rebuild logic to IM ( #3383 )
...
This cleanup step prepares for InterestManagement classes being able to customize the rebuild logic, but for that we should move it out of the NetworkServer class
2023-02-16 12:11:54 +01:00
JesusLuvsYooh
e0e262678b
feature: NetworkTransform interpolation can be disabled ( #3378 )
...
* Interpolation off bools for NetworkTransform.
Gives a snap-like effect to position, rotation and scaling.
* Update Assets/Mirror/Components/NetworkTransformBase.cs
* Update NetworkTransformBase.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-16 04:19:02 +01:00
Robin Rolf
569938c8c7
perf: Use static generic class to cache message id ( #3381 )
...
* perf: Use static generic class to cache message id
we can (ab)use c# generics to cache the message id in a static field
this is significantly faster than doing a runtime Dictionary lookup in my testing (16% thread cpu-> ~0.22% for 121 moving nts)
generic classes have separate static fields per type specification, so we can store things per-type there, exactly what we need!
* Obsolete NetworkMessages.GetId
* Update Assets/Mirror/Core/NetworkMessages.cs
* Copy comment from GetId up to the Id field
* wording
---------
Co-authored-by: MrGadget <9826063+MrGadget1024@users.noreply.github.com>
2023-02-15 16:39:25 +01:00
MrGadget
59dc88c981
perf: Cache Stable Hashes ( #3377 )
...
* perf: Cache Stable Hashes
- Static dictionary of message hashes
- ResetStatics
* Added debug log for future debugging.
* Update Extensions.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-14 02:45:36 +01:00
JesusLuvsYooh
adc28267f7
Updated function name in code summary.
2023-02-12 16:19:43 +00:00
MrGadget1024
80211ba827
fix: NetworkRoomManager.ReadyStatusChange is now a virtual method
...
- Script Template updated accordingly.
Fixes #1889
2023-02-09 11:21:06 -05:00
MrGadget
e260d1eb2a
fix: NetworkWriter - Change MaxStringLength to ushort.MaxValue ( #3374 )
...
* fix: NetworkWriter - Change MaxStringLength to ushort.MaxValue
- local `realsize` in NetworkReaderExtensions.ReadString changed to ushort with proper casting
- Comments added to NetworkWriterExtensions
- Comments added to NetworkReaderExtensions
- Log output updated in both for consistency
* Added comment
* Changes per request
2023-02-09 09:24:03 -05:00
MrGadget
9f7ed98ccc
feat: Read / Write DateTime ( #3373 )
...
* feat: Read / Write DateTime
- no UTC conversion...users can do that on their own if they want / need to.
DateTime is a public struct but has no public fields (all properties) so no error is thrown if users try to use it in SyncVar / Cmd / Rpc / NetMsg, but no value is put on the wire and SyncVar hooks don't fire because the client determines no actual value change.
* Added nullable DateTime support
* Removed mysterious using
2023-02-09 09:25:57 +01:00
MrGadget1024
efeab67331
NetworkRoomManager - refactor CheckReadyToBegin
2023-02-08 10:05:01 -05:00
MrGadget1024
324c41e1c7
NetworkRoomManager - refactor CheckReadyToBegin
2023-02-08 10:04:30 -05:00
MrGadget1024
bbcf4b38c0
breaking: MIRROR_73_OR_NEWER
2023-02-08 03:04:41 -05:00
MrGadget1024
3ef5e06431
Revert "breaking: MIRROR_73_OR_NEWER"
...
This reverts commit 8596f1d827
.
2023-02-08 03:02:30 -05:00
MrGadget1024
8596f1d827
breaking: MIRROR_73_OR_NEWER
2023-02-08 02:57:27 -05:00
MrGadget
229a1a6509
perf: Distance Interest Management caches custom ranges to avoid runtime TryGetComponent overhead ( #3372 )
...
* fix: Distance Interest Mgmt static dictionary
* Clear on Reset
* Allow for changing range at runtime
* Use OnSpawned / OnDestroyed
* reverted default visRange
* Update DistanceInterestManagement.cs
* Update DistanceInterestManagement.cs
---------
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-02-08 05:02:55 +01:00
MrGadget1024
340a4b907a
DistanceInterestManagementCustomRange - larger default visRange
2023-02-07 10:13:41 -05:00
MrGadget1024
f86010b192
DistanceInterestManagement - larger default visRange
2023-02-07 10:12:45 -05:00
MrGadget1024
cbcfeede16
fix: Removed buggy canvas from example player prefabs
2023-02-07 10:09:24 -05:00
Robin Rolf
2a021f73f5
fix: Weaver doesn't NRE on generic array ( #3371 )
...
* Failing generics weaver test for T[]
* fix: weaver doesn't handle generic array field
T[] would cause a NRE:
(0,0): error ----------------------------------------------
(0,0): error Exception :System.NullReferenceException: Object reference not set to an instance of an object.
(0,0): error at Mirror.Weaver.Extensions.IsDerivedFrom(TypeReference tr, Type baseClass) in Mirror\Editor\Weaver\Extensions.cs:line 21
(0,0): error at Mirror.Weaver.Extensions.IsDerivedFrom[T](TypeReference tr) in Mirror\Editor\Weaver\Extensions.cs:line 17
(0,0): error at Mirror.Weaver.SyncObjectProcessor.FindSyncObjectsFields(Writers writers, Readers readers, Logger Log, TypeDefinition td, Boolean& WeavingFailed) in Mirror\Editor\Weaver\Processors\SyncObjectProcessor.cs:line 25
(0,0): error at Mirror.Weaver.NetworkBehaviourProcessor.Process(Boolean& WeavingFailed) in Mirror\Editor\Weaver\Processors\NetworkBehaviourProcessor.cs:line 76
(0,0): error at Mirror.Weaver.Weaver.WeaveNetworkBehavior(TypeDefinition td) in Mirror\Editor\Weaver\Weaver.cs:line 109
(0,0): error at Mirror.Weaver.Weaver.WeaveModule(ModuleDefinition moduleDefinition) in Mirror\Editor\Weaver\Weaver.cs:line 125
(0,0): error at Mirror.Weaver.Weaver.Weave(AssemblyDefinition assembly, IAssemblyResolver resolver, Boolean& modified) in Mirror\Editor\Weaver\Weaver.cs:line 208
(0,0): error ----------------------------------------------
2023-02-07 14:10:15 +01:00
MrGadget1024
63235f2f73
fix: Added missing EventSystem to example scenes
2023-02-07 02:42:09 -05:00
MrGadget1024
a3dbc9dbb6
fix: Improved Player Controller in examples
2023-02-06 11:27:29 -05:00
MrGadget1024
a8a6b403fe
fix: Updated Multiple Matches example
...
- MatchController needed longer delay in ServerEndMatch
- Syntax and formatting
2023-02-05 23:53:24 -05:00
MrGadget1024
1399a930ac
Extended wait to .5 seconds for RpcExitGame to process
2023-02-05 22:55:23 -05:00
MrGadget1024
10553cab84
Removed Debug logs
2023-02-05 22:54:32 -05:00
MrGadget1024
4920f5ff6b
Merged master
2023-02-05 20:35:40 -05:00
MrGadget1024
42d4723f4e
fix: Network Manager - don't call OnClientConnect from FinishLoadScene
2023-02-05 19:37:56 -05:00
MrGadget1024
40e4a57be2
fix: Network Manager now calls OnClientConnect as soon as authenticated
...
- No longer waits for scene change first so users can override on successful connect.
- clientLoadedScene flag is set before calling OnClientConnect.
2023-02-05 19:32:36 -05:00
MrGadget1024
70cee43a71
fix: Examples code review and updates
...
- ServerCallback / ClientCallback attributes applied
- Commented out Debug.Logs removed
- Syntax cleanup
- Reset Player prefabs to Default layer
- Simplified TryGetComponent usage
- All Prefabs updated to Unity 2021.3.17
2023-02-05 18:04:54 -05:00
MrGadget1024
5a161a07ce
Simplified TryGetComponent usage
2023-02-05 14:14:21 -05:00
MrGadget1024
f451087d81
WIP
2023-02-05 12:16:09 -05:00
MrGadget1024
467aa70e3d
CanvasController - use attributes
2023-02-05 08:28:07 -05:00
MrGadget1024
35f72c198e
MatchNetworkManager - removed comments
2023-02-05 07:08:37 -05:00
MrGadget1024
dca22bd5d3
MatchController - syntax
2023-02-05 07:08:19 -05:00
MrGadget1024
d3038478cf
fix: Updated examples to handle StopClient for Host
2023-02-04 21:19:29 -05:00
MrGadget1024
3d9e95e52c
fix: NetworkManager - keep in DDOL if ServerOnly
...
- like when StopClient called for Host
2023-02-04 21:19:08 -05:00
MrGadget1024
a83379fe17
fix: NetworkManager - handle StopClient in Host mode
2023-02-04 20:13:17 -05:00
JesusLuvsYooh
5e0b450f87
LatencySimulator - User friendly changes. (ready for approval) ( #3316 )
...
* syntax
* SyncDirection example: increase spacing
* LatencySimulator - User friendly changes.
Changed "ping" to milliseconds, from seconds.
Changed % from 0-1, to 0-100 (previously 1 on slider, meant 100%)
Tooltip adjusted to show a good default value to use, and a worst case scenario value.
* Delete Scene.unity
* Revert "Delete Scene.unity"
This reverts commit 305235f6f4
.
* Revert "SyncDirection example: increase spacing"
This reverts commit c2176876cb
.
* Revert "syntax"
This reverts commit a668c78f68
.
* Tooltip adjustments, also now has default values.
* Update LatencySimulation.cs
---------
Co-authored-by: vis2k <info@noobtuts.com>
2023-02-03 07:08:31 -05:00
MrGadget1024
dc8f0b3165
Unity updated Player prefab
2023-02-02 19:17:50 -05:00
MrGadget1024
2554372913
Updated Interest Management Script Template
2023-01-29 06:44:20 -05:00
vis2k
c4e9071700
unused import
2023-01-29 19:08:19 +09:00
vis2k
deddbe6ee9
fix : #3367 NetworkTransformReliable now checks for changes at the end of UpdateServer, not at the beginning [imer]
2023-01-29 13:11:33 +09:00
vis2k
3815fe94a8
fix : #3259 NetworkClient.ApplySpawnPayload now initializes NetworkIdentity flags before DeserializeClient invokes SyncVar hooks
2023-01-29 12:54:44 +09:00
vis2k
db83e2dd42
naming
2023-01-29 12:46:29 +09:00
vis2k
8d8bde72f4
fix: NetworkClient now sets NetworkIdentity.connectionToServer before OnStartAuthority/OnStartClient callbacks.
...
previously this was only available in OnStartLocalPlayer
2023-01-29 12:40:03 +09:00
vis2k
384e551245
NetworkClient.BootstrapIdentity split into SetIdentityFlags and InvokeIdentityCallbacks
2023-01-29 12:40:03 +09:00
MrGadget1024
d27e08647a
NetworkClient - comment typo
2023-01-28 13:00:47 -05:00
vis2k
5c989491b9
NetworkClient.NetworkLateUpdate: use .localTime in all Unity versions
2023-01-29 01:48:56 +09:00
vis2k
a0accce89a
syntax: remove redundant type qualifiers
2023-01-29 01:46:26 +09:00
vis2k
46f07cc71a
syntax
2023-01-29 01:44:55 +09:00
MrGadget1024
7dd3ce0163
AdditiveLevelsNetworkManager - comments
2023-01-28 11:23:18 -05:00
vis2k
5bbad6fd2f
kcp2k V1.29 [2023-01-28]
...
- fix: KcpServer.CreateServerSocket now handles NotSupportedException when setting DualMode
fixes https://github.com/MirrorNetworking/Mirror/issues/3358
2023-01-28 23:59:54 +09:00
vis2k
7d2d21ac2c
fix : #3365 NetworkClient.OnTransportDisconnected now always invokes OnDisconnected, even during connecting phase
2023-01-28 23:41:14 +09:00
vis2k
e21d42a324
syntax
2023-01-28 23:14:09 +09:00
vis2k
c389a526a9
kcp2k V1.28 [2023-01-28]
...
- fix: KcpClient.Connect now resolves hostname before creating peer
https://github.com/MirrorNetworking/Mirror/issues/3361
2023-01-28 23:11:33 +09:00
JesusLuvsYooh
56a01c3941
Application.isFocused check on tanks Update input. ( #3364 )
2023-01-28 11:37:23 +01:00
vis2k
0312bf7103
fix : #3362 BootstrapIdentity now initializes isClient/isLocalPlayer flags before calling OnStartAuthority
2023-01-28 13:20:21 +09:00
vis2k
25ef55413c
BootstrapIdentity: local player code simplified
2023-01-28 13:13:13 +09:00
vis2k
77c915eb34
NetworkClient: CheckForLocalPlayer merged into BootstrapIdentity
2023-01-28 13:10:22 +09:00
vis2k
4d8c74593d
NetworkClient.ChangeOwner: remove dependency on CheckForLocalPlayer to prepare merging CheckForLocalPlayer into BootstrapIdentity
2023-01-28 13:03:38 +09:00
vis2k
7cea78fae5
syntax
2023-01-28 12:54:34 +09:00
vis2k
a48f0af43b
NetworkClient.CheckForStartClient merged into BootstrapIdentity
2023-01-28 12:49:15 +09:00
vis2k
b6cee2aae2
remove unnecessary HostMode.ActivateHostScene function.
...
this would call OnStartClient for scene objects if .isClient was false.
however, NetworkManager.FinishStartHost calls NetworkServer.SpawnObjects first.
which always sets isClient = true for all scene objects.
2023-01-28 12:47:37 +09:00
vis2k
bb6c0de495
NetworkServer.SpawnObject: add explanation
2023-01-28 12:34:38 +09:00
vis2k
547da088b1
syntax
2023-01-28 12:33:48 +09:00
vis2k
99360ffbcb
NetworkClient.BootstrapIdentity helper function to move OnStartAuthority/Client/LocalPlayer callers in one place
2023-01-28 12:15:23 +09:00
vis2k
e9e3874205
fix: NetworkClient.OnHostClientSpawn now sets AOI visibility before invoking user callbacks.
2023-01-28 12:07:45 +09:00
MrGadget1024
7318dfed3f
fix: Use GUID's in AsmDef's
...
- Unity also appled changes per 2021.3.17
See https://docs.unity3d.com/2021.3/Documentation/Manual/class-AssemblyDefinitionImporter.html#asmdef-references
2023-01-27 04:27:15 -05:00
MrGadget1024
900c23a173
fix: Removed invalid reference from KCP AsmDef
2023-01-27 04:17:57 -05:00
MrGadget1024
79718d0638
fix: Added SimpleWebTransport to Mirror.Transports AsmDef
2023-01-27 04:13:56 -05:00
MrGadget1024
f16e1973c0
Additive Levels Offline Scene resaved
2023-01-26 03:28:29 -05:00
vis2k
5802fec712
SHA-1 comments
2023-01-26 01:41:34 +09:00
vis2k
01d0ae1a6b
SimpleWebTransport: add SHA1 comments
2023-01-26 01:31:15 +09:00
MrGadget1024
debc78310d
AdditiveLevels Example - Portal.cs typo
2023-01-24 15:16:46 -05:00
MrGadget1024
22ac763199
NetworkTransformBase - OnClientAuthorityChanged is Server Only
2023-01-20 19:32:06 -05:00
MrGadget1024
2239bb0245
NetworkTransformBase - syntax
2023-01-20 19:29:27 -05:00
MrGadget1024
dd5d7cab01
fix: NetworkTransform classes - methods in call order
2023-01-19 07:26:56 -05:00
MrGadget
af0bacf8ae
NetworkTransformBase - Reset when changing authority ( #3357 )
2023-01-19 12:04:14 +01:00
MrGadget1024
16b60e80f3
PlayerCamera - Added warnings for no MainCamera
2023-01-18 09:10:48 -05:00
MrGadget1024
a35c0dbd9a
fix: ChangeOwner now adds/removes from owned hashset
...
We do this in spawn and destroy already.
2023-01-16 07:30:39 -05:00
MrGadget1024
3e7837cebd
Revert "Added License, Notice, Version files"
...
This reverts commit 585be60d38
.
2023-01-14 11:01:42 -05:00
MrGadget1024
585be60d38
Added License, Notice, Version files
2023-01-14 11:01:14 -05:00
MrGadget
a024753a42
fix: Fixes #3317 - NetworkTransformReliable: don't send last snapshot ( #3355 )
2023-01-14 11:34:28 +01:00
MrGadget
875b34540a
fix : #3351 - Reset Statics in NS, NC, and NC_TimeInterpolation ( #3353 )
...
* fix: Fix #3351 - NetworkClient_TimeInterpolation reset statics
- Fixes #3351
* NetworkServer - reset actualTickRate
* NetworkClient - reset lastSendTime
* NetworkClient_TimeInterpolation - reverted reset of bufferTimeMultiplier
- added comment as to why we're not resetting it.
2023-01-13 22:11:43 +01:00
MrGadget1024
626180b2d3
Network Manager HUD - made it wider so it doesn't wrap as much
2023-01-12 22:09:15 -05:00
MrGadget1024
0cc27d2372
NetworkClient - added bufferTimeMultiplier to OnGUI
2023-01-12 22:08:38 -05:00
vis2k
027458db96
fix : #3344 NetworkServer.Shutdown sets active=false after destroying spawned objects.
...
this way scene objects without owners can still modify SyncLists in OnStopServer without IsWriteable() throwing an exception about NetworkServer being inactive.
2023-01-12 12:06:04 +01:00
vis2k
74e6b72239
fix: NetworkServer.DisconnectAll doesn't set inactive anymore. it should simply "disconnect all" connections.
...
otherwise Shutdown may not be able to properly clean up all objects.
prepares to fix #3344
2023-01-12 11:46:45 +01:00
vis2k
c04eeacba6
comment improved
2023-01-12 11:38:24 +01:00
vis2k
e16e55616b
fix : #3354 SyncList callback for OP_SET index parameter fixed
2023-01-12 00:44:18 +01:00
MrGadget1024
3e8880db1c
BasicAuthenticator - comment typo
2023-01-11 15:47:37 -05:00
MrGadget1024
655d0b0aa8
fix: NetworkClient - make OnGUI public
2023-01-09 19:24:49 -05:00
MrGadget1024
b642da6b2f
fix: Fix #3349 - NetworkTransformReliable use correct value in OnSerialize
...
- Fixes #3349
2023-01-09 09:41:19 -05:00
vis2k
2c9f6c4960
fix: kcp2k V1.27. fixes #3337
2023-01-08 11:51:50 +01:00
MrGadget1024
c93935422e
Check for no Camera.main in OnGUI
...
- avoids NRE flood if no camera with MainCamera tag.
2023-01-06 18:50:13 -05:00
mischa
3c85efa2d9
fix : #3330 #2422 SpawnObjects now activates, but does not spawn scene objects with inactive parents ( #3347 )
...
* fix : #3330 #2422 SpawnObjects now activates, but does not spawn scene objects with inactive parents
* helper function
* remove old workaround.
identities which aren't active in hierarchy don't have Awake called forcefully anymore.
it's not necessary because the second pass won't spawn them anymore.
* add comments
2023-01-06 18:21:03 +01:00
vis2k
c9dfd95bb7
add comment
2023-01-06 17:40:57 +01:00
vis2k
7b7ad85204
fix : #3340 SyncSet/Dictionary callbacks are only called once
2023-01-05 21:54:53 +01:00
vis2k
c5aa4746e1
fix : #3340 SyncList callbacks are only called once
2023-01-05 21:21:51 +01:00
vis2k
0d53f7c3a0
fix : #3343 allow modifying client synclists for unspawned objects like character previews
2023-01-04 01:32:11 +01:00
vis2k
8570afab94
fix : #3341 SyncLists can now be modified before spawning again
2023-01-04 01:10:53 +01:00
vis2k
02218bda13
fix : #3342 InitSyncObject IsWritable/IsRecording permissions fixed for host mode and other player's objects on client
2023-01-04 01:10:51 +01:00
vis2k
d645aad95c
fix: forgot to remove SyncList OnSerializeAll log message
2023-01-04 01:02:47 +01:00
MrGadget1024
34f6df24a1
NetworkClient - moved RegisterMessageHandlers down
2023-01-03 15:41:01 -05:00
MrGadget
273f91088f
fix : #3326 NetworkIdentity doesn't reset SyncObjects anymore ( #3339 )
...
* Fixes : #3326
- All callers to Reset are either unspawning (disabling) the object or have run a custom UnSpawnHandler
- Sync collections should retain their data in any case because the object may get respawned
- When it is respawned, OnDeserializeAll clears the internal collection and changes lists before adding back the entire payload.
- Users can always call the public Reset on the SyncObject themselves if they want it wiped.
* fixed comment
2023-01-03 09:59:36 +01:00
MrGadget1024
30ec858551
NetworkClient - formatting
2023-01-02 12:50:41 -05:00
MrGadget1024
0189b7f45e
NetworkServer - formatting
2023-01-02 12:49:53 -05:00
MrGadget1024
1f09c7f98d
NetworkIdentity - formatting
2023-01-02 12:49:04 -05:00
MrGadget1024
ed102ffb23
NetworkIdentity - moved SetClientOwner down with AssignClientAuthority
...
- AssignClientAuthority is the only caller in this class
2023-01-02 12:28:58 -05:00
MrGadget1024
9405e9fef6
NetworkIdentity - moved ResetStatics up
2023-01-02 12:26:53 -05:00
MrGadget1024
bc28022552
NetworkIdentity - moved HandleRemoteCall up
...
- Nothing in NetworkIdentity calls this, only external callers
2023-01-02 12:24:20 -05:00
MrGadget1024
de421cdc1f
NetworkIdentity - moved ClearDirtyBits methods up to their respective callers
2023-01-02 12:21:08 -05:00
MrGadget1024
c0e047b01a
NetworkClient - moved NotifyAuthority and 2 related others down below Reset
2023-01-02 12:13:59 -05:00
MrGadget1024
d71c9e2a77
NetworkIdentity - moved ClearObservers down below Reset
2023-01-02 12:09:15 -05:00
MrGadget1024
82ff8fddf7
NetworkClient - moved DestroyObject down
2023-01-02 11:15:13 -05:00
MrGadget1024
3616ad818b
NetworkServer - moved obsoletes
...
- localClientActive to above active
- ActivateHostScene to bottom out of the way
2023-01-02 09:53:01 -05:00
MrGadget1024
ce7706b5a0
NetworkServer - moved RemoveTransportHandlers up
2023-01-02 09:42:46 -05:00
MrGadget1024
ed8baffc6c
NetworkServer - moved Listent and Shutdown up
2023-01-02 09:40:43 -05:00
MrGadget1024
2943aff578
NetworkServer - moved RebuildObserversCustom down
2023-01-02 09:33:52 -05:00
MrGadget1024
c4b919b7bc
NetworkServer - moved AddAllReadyServerConnectionsToObservers down
2023-01-02 09:32:41 -05:00
MrGadget1024
5f455245ee
NetworkServer - moved message handers up with RegisterMessageHandlers
2023-01-02 09:22:49 -05:00
MrGadget1024
ecfa4dd26e
NetworkServer - Organized spawn methods to call order
2023-01-02 09:10:14 -05:00
MrGadget1024
a25502f82d
NetworkServer - put AddPlayerForConnection methods in call order
...
- moved RemovePlayerForConnection up
2023-01-02 08:57:29 -05:00
MrGadget1024
051b63caee
NetworkServer - put Destroy methods together in call order
2023-01-02 08:54:08 -05:00
MrGadget1024
1f87ebdf45
NetworkClient - Moved Destroy method down
...
- put it with DestroyAllClientObjects
- preparing for consolidation
2023-01-02 07:12:21 -05:00
MrGadget
77a4ad9674
breaking: Removed Old Obsoletes ( #3335 )
...
- Also normalized Deprecatd comments for easier searching
2023-01-01 18:37:49 +01:00
MrGadget
c364d194fe
fix : #3334 NetworkClient DestroyAllClientObjects Before ClearSpawners ( #3336 )
...
* fix: NetworkClient DestroyAllClientObjects Before ClearSpawners
- DestroyAllClientObjects needs to be able to call Unspawn handlers
- Fixes: 3334
* Update Assets/Mirror/Core/NetworkClient.cs
Co-authored-by: mischa <16416509+vis2k@users.noreply.github.com>
2023-01-01 18:22:02 +01:00
MrGadget1024
4deb179d62
PreprocessorDefine - fixed typo in comment
2022-12-31 10:32:41 -05:00
MrGadget1024
ff461331d4
PreprocessorDefine - added 12 months comment
2022-12-31 10:29:48 -05:00
MrGadget1024
97547a285c
Culled compiler symbols to last 12 months
...
- Going forward, we need to remove oldest when we add new one each month when we publish to the store, so we only keep them back 12 months.
2022-12-31 10:19:16 -05:00
vis2k
642423aef8
MIRROR_71_0_OR_NEWER
2022-12-31 14:44:09 +01:00
vis2k
ca9f07d812
fix : #3329 NetworkTransform UpdateServer checks if .connectionToClient is null to support room demo / scene changes
2022-12-31 14:36:57 +01:00
vis2k
6581300ce0
remove unused imports
2022-12-31 14:34:28 +01:00
MrGadget
993caf3b36
NetworkClient - Use TryGetComponent ( #3331 )
...
This eliminates allocations, at least in the editor, per Unity docs.
2022-12-31 13:59:57 +01:00
MrGadget
82a7e752a8
Use TryGetComponent ( #3332 )
...
This eliminates allocations, at least in the editor, per Unity docs.
2022-12-31 13:59:42 +01:00