Commit Graph

4584 Commits

Author SHA1 Message Date
James Frowen
d3d3113f7b
perf(transport): BREAKING: callbacks instead of unityevent for transports (#2417)
* delegate and callbacks instead of unityevent

* using callbacks in Mirror

* Using new callbacks instead of events
* moving methods next to each other in NetworkClient
* moving add/remove to methods in NetworkServer

* replacing uses of events within transports and tests

* fixing tests

* fixing more tests

* replacing delegates with actions

* adding comments to show what action variable's are

* removing extra function created in rebase

* renaming callbacks

* adding reset methods so that actions arn't null

* fixing rename

* breaking defines

* Update Assets/Mirror/Runtime/Transport/KCP/MirrorTransport/KcpTransport.cs

* Update KcpTransport.cs

* Update Transport.cs

* removing ResetHandlers methods

transports can now call events after stop is called

Co-authored-by: vis2k <info@noobtuts.com>
2020-11-20 23:47:56 +08:00
MrGadget1024
c3a06b297a doc: Updated ChangeLog 2020-11-20 02:39:59 -05:00
MrGadget1024
347a376dad fix: Fixed PlayerScore Display in MultipleAdditiveScenes Example 2020-11-19 23:58:14 -05:00
MrGadget1024
d68d03d900 doc: Updated ChangeLog 2020-11-19 22:26:59 -05:00
MrGadget1024
72ae5cb7a7 fix: Fixed issues in MultipleAdditiveScenes example
- Fixed NRE when no host player in PlayerScore
- Fixed player collisions by making the collider always on
2020-11-19 22:24:16 -05:00
MrGadget1024
148e803e8b doc: Updated ChangeLog and Deprecations docs 2020-11-19 22:21:55 -05:00
MrGadget1024
7de02aef55 doc: fixed example code to use struct with NetworkMessage 2020-11-19 13:48:17 -05:00
MrGadget1024
43cea98ef9 Fixed typos 2020-11-18 11:28:01 -05:00
vis2k
1947f061ad
perf: NetworkWriter/Reader Write/ReadBlittable<T> for 4-6x performance improvement! (#2441)
* Mirror asmdef: allow unsafe

* perf: NetworkWriter.WriteBlittable<T> for 4-6x performance improvement

* perf: NetworkReader.ReadBlittable<T>

* Remove unused conversion structs

* Add sizeof(T) vs Marshal.SizeOf<T> comments

* Add 'BlittableOnThisPlatform' test to be sure
2020-11-18 10:46:45 +08:00
James Frowen
cebc578abb
moving transport handler code to functions (#2444)
this matches Networkclient
2020-11-17 14:46:37 +00:00
James Frowen
72fa903125
Refactor add transport handlers 2 (#2443)
* moving add/remove methods next to each other

* renaming methods for clarity
2020-11-17 08:37:55 -06:00
James Frowen
c95f7d4da9
moving add/remove methods next to each other (#2442) 2020-11-17 08:36:21 -06:00
James Frowen
793d3478fc perf: Increase write performance (https://github.com/MirrorNetworking/SimpleWebTransport/pull/25)
* adding options to increase performance of send loop

adding config to Transport

* removing extra comments

* changing default value of sleep to false
2020-11-17 14:25:18 +00:00
vis2k
1ca61547ea Performance Tests: create big enough writer to measure without runtime resizes 2020-11-17 20:59:40 +08:00
vis2k
968c2e86ec Syntax 2020-11-17 20:48:05 +08:00
vis2k
54e680f61c Performance Tests: simplify WriteInt so it truly only measures WriteInt 2020-11-17 20:47:49 +08:00
vis2k
eaf1df2dc1 better 2020-11-17 20:46:37 +08:00
vis2k
f577864877 Performance Tests: add WriteQuaternion to test a more complex type 2020-11-17 20:46:37 +08:00
James Frowen
7bb312bdb8
adding try/catch to handler so server doesn't crash from user exceptions (#2435)
* adding try/catch to hanlder

user code can throw errors.

* Update Assets/Mirror/Runtime/MessagePacker.cs

* Update Assets/Mirror/Runtime/MessagePacker.cs

* test for command that throws

* disconnecting client after Exception in message handler

Co-authored-by: vis2k <info@noobtuts.com>
2020-11-17 15:51:29 +08:00
vis2k
2a5af1af20 kcp2k V1.3 2020-11-17 15:41:37 +08:00
James Frowen
54869c9ba2
finding handler inside TransportReceive so we dont need to check true/false (#2439) 2020-11-16 16:09:32 +00:00
James Frowen
e12621cbd1
moving log inside handler so it has message name (#2438) 2020-11-16 12:40:50 +08:00
James Frowen
46e60c6564
renaming reader (#2437)
less verbose name
2020-11-16 12:40:17 +08:00
James Frowen
38907e63d9
fixing typo (#2434) 2020-11-15 20:40:45 +00:00
vis2k
fcd1394061
MessagePacker.UnpackMessage renamed to Unpack for consistency with Pack and because the class is already named MessagePacker anyway (#2430) 2020-11-16 02:42:01 +08:00
vis2k
14ae0d094d
MessageHandler.MessageHandler renamed to WrapHandler because that's what it does. (#2431) 2020-11-16 01:48:33 +08:00
vis2k
1e9a3b03de add comment 2020-11-16 00:43:48 +08:00
vis2k
ca29bcebe5 MessagePacker.Unpack<T> moved to MessagePackerTests because it's only used for tests 2020-11-15 16:41:38 +08:00
vis2k
cf9025bff7 Synta 2020-11-15 16:41:38 +08:00
James Frowen
3727e36b74
weaver removing unneeded ImportReference (#2429) 2020-11-14 23:55:44 +00:00
MrGadget1024
b14daba289 Removed Telepathy from example that I added by accident 2020-11-14 15:43:14 -05:00
James Frowen
417818d4d6
weaver import typeRefernce when generating readers (#2427)
Importing typeRefernce once before we generate reader
2020-11-14 12:50:21 -06:00
MrGadget1024
2e2fecb20a Minor code cleanup in PlayerControllers 2020-11-14 11:48:28 -05:00
James Frowen
f7b0b88247 removing invalid cref 2020-11-14 16:28:32 +00:00
Paul Pacheco
037ac55937
fix: using mathematics in commands and rpcs (#2425)
Generating readers and writers for structs in other assemblies
could sometimes cause a
```
System.ArgumentException: Member 'xxx' is declared in another module and needs to be imported
```
This in particular affected unity mathematics.

fixes #2406
2020-11-14 10:25:48 -06:00
Paul Pacheco
59ed64f9d0
feat: Provide user friendly error with undefined reader/writer (#2423)
Previously this just gave NRE, which does not help the user address the problem.

provides a better error for #2411
2020-11-14 08:46:53 -06:00
MrGadget1024
d5e162c0d0 Removed Server Only scene object from MultipleAdditiveScenes example 2020-11-14 02:26:19 -05:00
MrGadget1024
7ea55ce935 Added server checks to ZoneHandler 2020-11-14 01:00:06 -05:00
MrGadget1024
e9286b8259 Added server checks to Spawner 2020-11-14 00:58:42 -05:00
MrGadget1024
263b88d24d Removed Server Only Scene Object from Room Example
Spawner now has static property and methods and doesn't need to be on any networked object.
2020-11-14 00:03:19 -05:00
MrGadget1024
474b2ddf06 Removed Server Only Scene Object from Additive Scenes Example 2020-11-13 23:01:30 -05:00
vis2k
218492a921 NetworkServerTests: UpdateDetectsNullEntryInSpawned 2020-11-13 20:13:35 +01:00
vis2k
b957ab7818 better name 2020-11-13 20:10:45 +01:00
vis2k
d21d501bd0 NetworkServerTests: UpdateWithNullEntryInSpawned 2020-11-13 20:05:41 +01:00
vis2k
0f96e8ce6b
Pool<T>; NetworkReader/WriterPools simplified by using Pool<T> (#2414)
* Pool & Tests

* NetworkWriterPool simplified: uses Pool<T>

* NetworkReaderPool simplified: uses Pool<T>
2020-11-13 19:22:03 +01:00
JesusLuvsYooh
3e21f76d4a
Round trip time bool and tooltip. (#2419)
* Round trip time bool and tooltip.

I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.

* Round trip time bool and tooltip.

I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.

* Round trip time bool and tooltip.

I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.

* Round trip time bool and tooltip.

I've added this RTT boolean and a tooltip, might clear up some confusion for future users.
Many believe ping is time to server, and rtt is ping pong.
2020-11-12 17:02:57 +01:00
vis2k
561d4c7876
Update README.md 2020-11-12 16:59:26 +01:00
MrGadget1024
78141fb7c2 doc: Updated Network Manager doc 2020-11-12 09:37:03 -05:00
MrGadget1024
69ba07bdfd doc: Updated ChangeLog 2020-11-11 18:34:58 -05:00
MrGadget1024
71c4ec30db doc: Updated ChangeLog 2020-11-11 18:18:22 -05:00