mischa
dbe98740be
breaking: remove PredictedRigidbody auto generated namespace
2023-11-20 17:21:19 +01:00
mischa
e42217a978
PredictedRigidbody: show inserted correction too
2023-11-20 13:22:39 +01:00
MrGadget1024
b5d6d775df
Updated Compiler Symbols
2023-11-20 07:06:24 -05:00
mischa
ab7c153df9
fix failing test
2023-11-20 12:32:10 +01:00
mischa
582a9c9dbf
fix failing test
2023-11-20 12:24:04 +01:00
mischa
a24103baef
PredictedRigidbody: comment out unused positionSensitivity for now
2023-11-20 12:17:43 +01:00
mischa
0655f77922
PredictedRigidbody: CorrectionMode instead of bool to support more modes soon
2023-11-20 10:58:23 +01:00
MrGadget1024
55e8ca57e7
fix(RandomColor): Consolidated to Common
2023-11-19 10:14:12 -05:00
MrGadget1024
ec357740cb
fix(PhysicsSimulator): Consolidated to Common
2023-11-19 10:13:22 -05:00
MrGadget1024
1113e45f5f
fix(CanvasNetworkManagerHUD): added namespace
2023-11-19 10:10:12 -05:00
MrGadget1024
0c8166326d
fix(AdditiveLevels): Fixed Portal label generation
2023-11-19 08:38:47 -05:00
mischa
816b775feb
Revert "fix: #3576 Pings are now stamped with a scene hash so we can drop messages before a (potentially long) scene load. fixes a bug where RTT would be very high after a long scene load. ( #3650 )"
...
This reverts commit c729fe119c
.
2023-11-17 11:09:33 +01:00
mischa
d4c0f20827
breaking: fix : #3652 host [Command]s are now simulated over a message queue instead of invoking them directly (credits: Brian B.) ( #3653 )
...
* comment
* fix: host [Command]s are now simulated over a message queue instead of invoking them directly (credits: Brian B.)
2023-11-17 10:34:20 +01:00
mischa
8ec937dfa6
LocalConnectionToClient: update comments
2023-11-16 17:10:49 +01:00
mischa
d6c43a343b
Tanks/FaceCamera moved to Examples/Common
2023-11-15 11:30:01 +01:00
mischa
95f3ac501d
Examples/Common renamed to Examples/_Common to be more obvious
2023-11-15 11:26:46 +01:00
mischa
c729fe119c
fix : #3576 Pings are now stamped with a scene hash so we can drop messages before a (potentially long) scene load. fixes a bug where RTT would be very high after a long scene load. ( #3650 )
...
* fix : #3576 Pings are now stamped with a scene hash so we can drop messages before a (potentially long) scene load. fixes a bug where RTT would be very high after a long scene load.
* 16 bit hash fakebyte
2023-11-15 11:25:37 +01:00
mischa
7a69c424eb
Extensions: GetStableHashCode16 from NetworkMessages.CalculateId for reuse in other places
2023-11-15 11:08:03 +01:00
mischa
f5599fa0c9
Room Example: update readme for new scene names
2023-11-15 09:51:15 +01:00
mischa
d90b913d5d
PredictedRigidbody: smoothCorrection tooltip
2023-11-14 13:14:08 +01:00
mischa
9d94adb1b8
syntax
2023-11-14 13:02:20 +01:00
mischa
c2fb271b83
predictedTime: comments
2023-11-14 11:49:28 +01:00
MrGadget
63f0fe4365
fix(PredictedState): Remove public accessors ( #3649 )
...
- Unity 2019 doesn't support `public` accessors inside interfaces.
- Compiles fine in all Unity versions without them.
2023-11-14 09:50:42 +01:00
mischa
7514e9b0f3
feat: Prediction October Progress [don't use this yet!]
2023-11-13 14:08:19 +01:00
mischa
d1c60845bd
fix: Telepathy V1.9
2023-11-10 11:23:54 +01:00
Robin Rolf
d4734c0892
fix: EdgegapHosting connect uses passed-in name/version ( #3646 )
2023-11-08 20:00:47 +01:00
MrGadget1024
6453db147d
PreprocessorDefine - moved comments up
...
- They'll be in the way of automation
2023-11-08 08:48:56 -05:00
mischa
9deff7e3f7
fix: EdgegapPlugin now shows detailed progress bar title and indicates 'Uploading' while uploading instead of freezing at 'Build and push: Pushed' for several minutes while uploading
2023-11-08 10:50:23 +01:00
mischa
0877e1f7ac
EdgegapPlugin: comment
2023-11-08 10:29:10 +01:00
mischa
acda90ae33
syntax
2023-11-08 10:28:43 +01:00
mischa
bcea21191b
fix: EdgegapPlugin typo
2023-11-08 10:27:23 +01:00
mischa
9979745bf9
fix: Edgegap Plugin 'InvalidOperationException: This instance has already started one or more requests.' when trying to Connect->Disconnect->Reconnect or Start->Stop->Start server
2023-11-08 10:26:43 +01:00
MrGadget
7bcaae9fb7
fix(EdgegapWindow): Simplify clearing ProgressBar ( #3645 )
...
- This was Imer's idea from Discord
2023-11-08 09:41:29 +01:00
mischa
b73c5ea9bd
indentation
2023-11-07 20:21:25 +01:00
mischa
0a3368afe3
fix: EdgegapPlugin progress bar getting stuck when returning early without clearing it
2023-11-07 20:18:53 +01:00
mischa
42a89a798b
fix: Headless / Dedicated Server detection now works on Unity 2019/2020 without dedicated server build support too ( #3643 )
2023-11-07 18:06:29 +01:00
mischa
3f31cbd99b
fix: EdgegapPlugin Unity 2019/2020 support
2023-11-07 10:30:11 +01:00
mischa
1b5f963c1f
fix: EdgegapPlugin now builds properly on ARM machines instead of deployments failing silently
2023-11-07 09:59:37 +01:00
mischa
eab86098df
fix: EdgegapPlugin EdgegapWindow.cs UIToolkit stylesheet paths aren't hardcoded anymore, allowing users to move Assets/Mirror/Hosting/Edgegap folder
2023-11-06 16:03:23 +01:00
mischa
e1d9604e3d
breaking: Edgegap Plugin: ServerDataManager UI code moved into EdegapWindow.cs and made non-static.
...
prepares for not-hardcoded stylesheet path as well.
2023-11-06 15:50:26 +01:00
mischa
7916f39613
Edgegap Plugin: EdgegapServerDataManagerUtils merged into EdgegapServerDataManager to prepare for non-static rewrite
2023-11-06 15:35:34 +01:00
mischa
005319adb8
breaking: Edgegap Plugin: remove EdgegapToolScript+Editor for now - the custom editor never shows anyway
2023-11-06 15:27:24 +01:00
MrGadget1024
fd758a8a88
fix:(NetworkServer) Added check for UNITY_EDITOR in Listen
2023-11-06 08:12:38 -05:00
MrGadget1024
b2f2e1c464
fixed indentation
2023-11-06 08:09:59 -05:00
mischa
7d91f9a073
Edgegap Plugin: move IsArmCPU to BuildUtils
2023-11-06 14:04:46 +01:00
MrGadget1024
57d412c704
Consolidated Server Listening output
2023-11-06 08:03:31 -05:00
mischa
bb9bf76eb9
fix: Edgegap plugin now detects and warns about ARM CPUs instead of deployments failing silently
2023-11-06 13:59:57 +01:00
MrGadget1024
54309b5e39
fix(MultiplexTransport): Add Server listening output
2023-11-06 07:58:17 -05:00
JesusLuvsYooh
b195cc062a
fix: Port log for when Server has started and is listening. ( #3642 )
...
Allows users to know if Server has actually started and which port, and not just initialised.
Credits to Gadget for code and suggesting to have it in NetworkServer.
(Originally was going in KCP-only)
2023-11-06 07:56:31 -05:00
mischa
1641bba5b1
fix: NetworkManager autoStartServerBuild now only auto starts a server in build, not in editor
2023-11-06 13:45:05 +01:00
mischa
113f810be9
Edgegap Plugin: remove unnecessary target switching
2023-11-06 13:06:38 +01:00
mischa
38c3781d9c
feat: NetworkManagerHUD exposes configurable Port field if Transport uses a Port
2023-11-06 13:02:06 +01:00
mischa
4193d75551
fix: Edgegap Plugin now creates Dedicated Server instead of Headless --nographics builds which should include #UNITY_SERVER define
2023-11-06 09:39:23 +01:00
mischa
bccebc67b4
Revert "fix: Edgegap Plugin 'InvalidOperationException: This instance has already started one or more requests.' when trying to Connect->Disconnect->Reconnect"
...
This reverts commit 68d768b871
.
2023-11-06 09:31:09 +01:00
MrGadget1024
bd85c74f52
NetworkManagerWithActions template - made actions non-static
...
- the singleton is already static, so ref them through that.
2023-11-05 07:54:13 -05:00
mischa
68d768b871
fix: Edgegap Plugin 'InvalidOperationException: This instance has already started one or more requests.' when trying to Connect->Disconnect->Reconnect
2023-11-05 13:31:13 +01:00
mischa
ec548a6921
fix: Edgegap Plugin: Multiple precompiled assemblies with the same name Newtonsoft.Json.dll included - this is now included via Package Manager dependency
2023-11-05 13:14:18 +01:00
mischa
2d3776df6e
Edgegap Plugin: detailed error message & solution for 'project not found'
2023-11-05 13:08:01 +01:00
MrGadget1024
c66f40f925
fix(NetworkManager): CalculateConnectionQuality and OnConnectionQualityChanged are now public
...
- Also moved them down with the rest of the OnClient overrides
- Also rewrote the comments as <summary> comments
2023-11-04 17:49:04 -04:00
MrGadget1024
1cda80369a
feat(Templates): Added Script Templates with Actions
...
- Adds template NetworkManagerWithActions
- Adds template NetworkBehaviourWithActions
2023-11-04 17:46:33 -04:00
MrGadget1024
8cd6cb1602
Renamed Network Authenticator and Interest Mgmt templates
2023-11-04 14:54:11 -04:00
MrGadget1024
075f250976
NetworkBehaviour Template - Added Awake and Start with comments
2023-11-04 14:53:25 -04:00
MrGadget1024
7e80464d5d
NetworkManagerTemplate - simplified singleton
2023-11-04 12:54:30 -04:00
mischa
5aca20f2d9
Edgegap Plugin: link to our custom documentation instead
2023-11-03 20:48:54 +01:00
mischa
05e9ca4646
feature: Edgegap Hosting Plugin ( #3636 )
...
* edgegap plugin from https://github.com/edgegap/edgegap-unity-plugin
* newtonsoft.json plugin from https://github.com/JamesNK/Newtonsoft.Json/releases/tag/13.0.3 (
* fix stylesheet paths
* version
* fix stylesheet paths
* syntax: remove redundant private identifiers
* readme
* syntax: use explicit type instead of var
* syntax: remove redundant private identifiers
* styling
* rename folder
* plugins
* styles
* readme updated
* fix deprecated warning
* mark mirror changes
* naming
* stylesheet path const
* namespace Edgegap
* remove unused imports
* delete scenes
* syntax
* mirror.hosting.asmdef
* only in editor
* syntax
* show error in error window
* fix typo
* syntax
* RunCommand_DockerVersion helper to prepare for platform indepenent code
* add logging
* logging better
* syntax
* mac and linux cmd docker version support
* syntax
* improve error
* syntax
* check linux build support
* detailed instructions
* restart warning
* gitignore builds
* mirror change mark
* docker build and push command platform independent
* improve log
* helpful docker daemon error
* unauthorized access error
2023-11-03 19:39:19 +01:00
mischa
631b8e0eac
fix : #3588 NetworkTransform OnTeleport doesn't call Reset() anymore, causing NetworkTransformReliable's delta compression to get out of sync before
2023-11-01 15:15:52 +01:00
mischa
a432b7f43d
fix : #3632 disable EdgegapKcpTransport OnGUI 'new' warning
2023-11-01 14:38:37 +01:00
mischa
a6304ded73
TransformSnapshot: add ToString for easier debugging
2023-11-01 12:58:14 +01:00
mischa
a195a07775
kcp V1.39:
...
fix: https://github.com/MirrorNetworking/Mirror/issues/3611 Windows UDP socket exceptions on server if one of the clients died
2023-10-31 23:08:45 +01:00
mischa
b434d001b1
change Debug.Assert to Assert.That
2023-10-29 17:53:03 +01:00
mischa
2ab395cc85
NetworkBehaviour.authority test coverage from #3495
2023-10-29 17:48:06 +01:00
MrGadget
64cb1a0082
fix: Fix Unity 2023 obsoletes ( #3635 )
2023-10-29 17:38:44 +01:00
MrGadget
6a8b4beaa1
breaking: Removed older Obsoletes ( #3633 )
...
BREAKING CHANGE - Removed older Obsoletes
2023-10-29 17:37:44 +01:00
mischa
bdb6cd8e53
fix : #3528 , #3529 NetworkBehaviour.authority now evaluates correctly in host mode too
2023-10-29 17:35:27 +01:00
MrGadget
97dc02ed59
fix: Add missing GetHashCode method for older Unity ( #3631 )
...
* fix: Add missing GetHashCode method for older Unity
- Cures warning about missing override.
* commit changes?
2023-10-29 10:40:10 +01:00
mischa
993ae8dc0f
fix: KCP V1.38 [2023-10-29] ( #3629 )
...
- fix: mismatching cookie race condition. cookie is now included in all messages.
https://github.com/MirrorNetworking/kcp2k/issues/54
- feature: Exposed local end point on KcpClient/Server
- refactor: KcpPeer refactored as abstract class to remove KcpServer initialization workarounds
2023-10-29 10:39:02 +01:00
mischa
9fe1d06ac0
fix: LatencySimulation now always applies latency to both channels. Fixes hard to debug issues where [SyncVar/Command/Rpc]s would be way off while NetworkTime.time was fine, due to latency being applied to only one channel. ( #3627 )
...
* fix: LatencySimulation now always applies latency to both channels. Fixes hard to debug issues where [SyncVar/Command/Rpc]s would be way off while NetworkTime.time was fine, due to latency being applied to only one channel.
* this too
2023-10-27 11:29:10 +02:00
mischa
5d1b041b69
LatencySimulation: syntax / readonly
2023-10-25 16:52:44 +02:00
mischa
334e20d8fa
Billiards example: fix ForceMode and add maxForce
2023-10-25 15:07:37 +02:00
MrGadget1024
36c93d0359
CanvasController - reordered methods and callers
2023-10-22 07:00:26 -04:00
MrGadget1024
76bab63598
AdditiveLevelsNetworkManager - fixed comment
2023-10-22 06:58:54 -04:00
MrGadget1024
2bf9bcdcdf
Portal - improved comments
2023-10-22 06:58:28 -04:00
MrGadget1024
64f2f109d5
Reward - removed erroneous comments
2023-10-22 06:57:57 -04:00
MrGadget1024
5cc090a1a5
MultiSceneNetManager - fixed comment
2023-10-22 06:56:45 -04:00
MrGadget1024
6b4bac7dc2
Unity updated prefab
2023-10-22 06:56:21 -04:00
JesusLuvsYooh
f56394a406
Scenes renamed, see description. ( #3625 )
2023-10-18 12:12:08 +02:00
mischa
809f7a4a0e
feature: kcp2k exposes LocalEndPoint (credits: Whale)
2023-10-13 19:27:18 +02:00
mischa
3bf180c1a6
ILPostProcessorLogger: TODO fix
2023-10-12 11:09:00 +02:00
Robin Rolf
0c5eba7aaa
fix: NetworkTime creates it's own frame time in 2019 ( #3624 )
...
Since we don't have double time there yet and the stopwatch will change during the frame which causes jitter and other artifacts
supersedes #3623
See also #2838
2023-10-08 21:21:52 +02:00
mischa
c312b6ba76
feature: ConnectionQuality details
2023-10-06 13:05:49 +02:00
mischa
52e36977fe
feature: Edgegap Relay from https://github.com/edgegap/distributed-relay-examples
2023-10-05 20:23:04 +02:00
JesusLuvsYooh
04af0fc709
Updated server build tooltip on NM ( #3622 )
2023-10-05 11:02:13 +02:00
Robin Rolf
8a0f6b1329
feat: NetworkManager Populate Spawnable Prefabs button ( #3608 )
...
* feat: Button to add all NI's to NetworkManager
* Undo.RecordObject instead of EditorUtility.SetDirty
* Button rename
* Don't clear list, only add
* ignore Mirror/Examples too
* fix: Undo.RecordObject needs to be called before modifying
* fix: individual entries weren't saved
* sort alphabetically to improve UX
* adjust caption
---------
Co-authored-by: mischa <info@noobtuts.com>
2023-09-30 10:04:11 +02:00
Justin Nolan
24d0ebece9
fix: improve NetworkMessage ID Hashing to minimize collisions ( #3618 )
...
* Improve network message ids
-Replaced the string stable hash function with an fnv1a hash which is a more uniform hash function
-Instead of casting the 32bit hash to 16bit which cuts off data we fold it in its self using xor to improve the 16bit hash
* Fix test
* Update Extensions.cs
---------
Co-authored-by: mischa <16416509+miwarnec@users.noreply.github.com>
2023-09-29 11:16:19 +02:00
mischa
3fff51d4a1
comment
2023-09-18 14:44:08 +02:00
mischa
046e825156
predictedTime: comments
2023-09-18 14:42:19 +02:00
mischa
3d4f54c8dd
fix: Billiards & BilliardsPredicted Rigidbodies now freeze Y position to avoid flying off or over the table
2023-09-18 13:10:24 +02:00
mischa
e3ed9aca2d
fix failing tests
2023-09-18 10:25:40 +02:00
mischa
c903298513
NetworkServer.Destroy: add warning if called on client without server/host to make this more obvious, instead of destroying something locally that doesn't persist on the server ( #3604 )
2023-09-17 11:01:07 +02:00
mischa
c49d188e8b
feature: NetworkManager.exceptionsCauseDisconnect option ( #3605 )
...
* NetworkManager flag
* NetworkMessages handle
* NetworkClient setting
* NetworkSErver setting
* NetworkManager applies it
* this too
* shorter
* bette wording (imer)
* security by default
2023-09-17 10:58:39 +02:00
mischa
94f5a924ff
feature: NetworkTime.predictedTime to prepare for Prediction ( #3599 )
...
* feature: NetworkTime.predictedTime to prepare for prediction
* disable log
* NetworkTime.predictedTime simplified: client timeline based on Time.time to fix first 5s being way ahead, history being too old, etc.
2023-09-14 11:30:33 +02:00
mischa
613f84b494
fix: Billiards / BilliardsPredicted ball Rigidbody CollisionMode changed from Continous to ContinousDynamic to fix white flying through red when applying large forces
2023-09-14 11:30:06 +02:00
JesusLuvsYooh
7b49b7d09d
A drag and drop Canvas UI HUD for NetworkManager ( #3602 )
...
Scales
Contains features of older OnGUI HUD
Credits to Ninja
2023-09-14 10:02:49 +02:00
mischa
0fce9bcdfb
fix : #3595 attempting to sync a Transform that isn't networked will now show a more obvious warning
2023-09-09 12:54:17 +02:00
JesusLuvsYooh
06f1ee09a0
feature: New Example - Character Selection and customisation. ( #3593 )
...
* Draft 1
Scene set up, podium and medic character added, minor ui and idle animation.
* Draft 2
3 characters, medic, assault, heavy.
Canvas linked up, along with character data.
* Draft 3
Map scene
Static variables, save data
Custom network manager
* Draft 4
Character pivots rotated.
Animation changes child, not parent position.
Spawn positions added.
Cheat protection for player prefab number added.
* Draft 5
Adding in customisations ontop of separate prefabs.
Player camera.
* Draft 6, part 1 complete.
Finished Player name, player colours.
Part 1 complete
Needs tidying up and code comments.
* Draft 7, checkpoint before next step.
* Draft 8 - Pre-selection and in-game character selection finished?
Pre-selection and in-game selection finished?
* Draft 9
* Draft 10 - CharacterSelection Example
* Draft 11
* Draft 12
* Draft 13
2023-09-07 21:57:22 +02:00
JesusLuvsYooh
796b0711f0
Update CouchPlayerManager.cs ( #3592 )
...
Moved some code from Awake to OnStartAuthority to prevent a reference from getting overridden.
Fixes Server/Host from not being able to add its own new local players, if remote players have maxed themselves out.
2023-09-07 10:07:37 +02:00
mischa
fcbf841d84
Billiards Demos: change trail debug line color and time
2023-09-07 09:26:51 +02:00
mischa
d9ef6d855c
GUIConsole: don't show in Unity Editor, we already have the Console window there (but keep it as option)
2023-09-06 18:39:38 +02:00
mischa
357e798e25
fix: Unity 2019/2020 compilation failing because ConcurrentQueue<T>.Clear was missing
2023-09-05 09:21:08 +02:00
mischa
55daefab2a
grammar fix
2023-09-05 09:17:10 +02:00
mischa
ae496ef0ee
NetworkTransformBase: virtual SetPosition/Rotation/Scale for users to overwrite if needed
2023-09-01 15:59:10 +02:00
mischa
02db1b03d5
NetworkTransformBase: virtual GetPosition/Rotation/Scale for users to overwrite if needed
2023-09-01 15:51:18 +02:00
mischa
966c4f2bdd
BilliardsPredicted: Player/ folder for PlayerPredicted prefab
2023-09-01 11:54:37 +02:00
mischa
3be960692c
BilliardsPredicted: show FPS at runtime
2023-09-01 11:18:28 +02:00
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