Commit Graph

378 Commits

Author SHA1 Message Date
vis2k
23acffbe12 Updated Telepathy to latest version. Fixes the problem where disconnect wouldn't be realized on client if client connect failed 2018-08-17 14:07:54 +02:00
vis2k
32e2f5f845 Client/Server loops: removed log messages 2018-08-17 14:07:54 +02:00
vis2k
1f2725376c Transport.Shutdown() is now called by NetworkManager.OnApplicationQuit so that client/server threads are fully shut down when pressing Stop in the Editor. otherwise editor keeps them alive until we press Play again. 2018-08-17 14:07:54 +02:00
vis2k
4b8a168026 Updated Telepathy to latest version 2018-08-17 14:07:54 +02:00
vis2k
baad970706 Removed channels and configs everywhere 2018-08-17 14:07:54 +02:00
vis2k
89964d32a2 RemoteEndPoint stuff removed 2018-08-17 14:07:54 +02:00
vis2k
1c9744385c Removed NetworkDiscovery because Telepathy doesn't support it 2018-08-17 14:07:54 +02:00
vis2k
699c379c3c Basic Telepathy integration 2018-08-17 14:07:54 +02:00
vis2k
d3b537fc06 NetworkDetailStats removed because they only work while Unity's NetworkTransport layer is running 2018-08-17 14:07:54 +02:00
vis2k
cca03d9d1d NetworkIdentity.AddObserver: added a better warning message if connectionId was already added 2018-08-17 14:07:12 +02:00
Coburn
e87502f851 Update the README file to reflect the location of the Linux DLLs. (#15)
* Update the README file to reflect the location of the Linux DLLs.
2018-08-16 17:22:52 +02:00
Paul Pacheco
24329b1ebe Remove unused variable 2018-08-10 07:42:31 -05:00
Paul Pacheco
97fe2331f1 Parenthesis is redundant 2018-08-10 07:41:18 -05:00
vis2k
00f571c28c Protocol: removed content length from message header because we can calculate the size from whatever is left in the reader. Saves 1-2 bytes bandwidth, so another 5% on average. 2018-08-07 14:38:43 +02:00
vis2k
d36b6d926d NetworkClient/NetworkServer pass exact message to data handlers instead of passing the whole buffer with a 'receivedSize' parameter. Prepares for the header 'size' removal to save bandwidth. 2018-08-07 14:35:25 +02:00
Paul Pacheco
009fc251ae Update issue templates
Describe how to upload a repro project
2018-08-06 20:06:23 -05:00
Paul Pacheco
457c12dd2b Update issue templates
Add template for feature request
2018-08-06 20:06:14 -05:00
Paul Pacheco
b830d4cbf2 add issue template
Tell people what to put on bug reports
2018-08-06 20:06:05 -05:00
vis2k
bb0e27cbb8 Protocol uses WritePackedUInt32 for size and msgtype header. Uses 1 byte instead of 2 bytes for each in almost all the cases, effectively reducing bandwidth by about 10%, given an average message size of 20 bytes 2018-08-06 22:54:05 +02:00
vis2k
7e574e7e39 Removed NetworkReader.SeekZero because it wasn't used anymore 2018-08-06 20:17:53 +02:00
vis2k
a4cce5b3c5 Removed NetworkClient.m_MsgReader because it wasn't used anymore 2018-08-06 20:16:49 +02:00
vis2k
96f48fdbba NetworkWriter.SeekZero/StartMessage/FinishMessage removed because they aren't needed anymore after protocol update 2018-08-06 18:53:24 +02:00
vis2k
54d5ede3e7 UNetwork.Protocol handles message packing and unpacking in one place now, so that we don't construct/deconstruct size/type headers manually everywhere. This way we can change the header any time without worrying about missing it somewhere. 2018-08-06 18:50:11 +02:00
vis2k
f8618d216f NetworkConnection.HandleBytes: removed message processing loop because always exactly 1 message is processed when NetworkServer/NetworkClient call HandleBytes. This is why there are NetworkTransport.Receive while loops in NetworkServer/NetworkClient.Update already. 2018-08-06 16:20:23 +02:00
vis2k
372f628d42 NetworkConnection.HandleReader removed and code put into HandleBytes, because that's what HandleBytes does and we don't need that extra HandleBytes/HandleReader redundancy 2018-08-06 15:41:27 +02:00
vis2k
8dc9cc2ee8 LocalClient.InvokeHandlerOnClient removed because it wasn't used anymore after removing LocalClients redundancies before 2018-08-06 15:23:07 +02:00
vis2k
398fec3890 NetworkManager: removed some unnecessary empty white spaces 2018-08-06 15:20:16 +02:00
vis2k
16477bad12 NetworkWriter: removed some unnecessary empty spaces 2018-08-06 14:58:28 +02:00
vis2k
028a6c8e78 NetworkAnimator: removed NetworkWriter caching to reduce dependencies on NetworkWriter.SeekZero 2018-08-06 14:55:10 +02:00
vis2k
7751244048 NetworkManager greeting message updated from HLAPI Pro to HLAPI CE 2018-08-06 12:41:00 +02:00
vis2k
4384a7115a Removed some unnecessary whitespaces 2018-08-06 12:40:31 +02:00
vis2k
9fb8b071c6 LocalConnections: removed redundant functions. no need to overwrite SendByChannel, as NetworkConnection.SendByChannel calls SendBytes anyway. Also removed NetworkServer.InvokeHandler since it's not needed anymore. InvokeBytes is the way to go. 2018-08-06 12:36:02 +02:00
Paul Pacheco
8f44c9aabb Fix #11, clear dirty bits only during synchronization, not during spawn (#12) 2018-08-04 15:50:59 +02:00
Paul Pacheco
29bcd247fe
Merge pull request #14 from Lymdun/patch-2
Fix discord invite (other branches)
2018-08-04 08:07:00 -05:00
Lymdun
7d3cd6c3c3
Fix discord invite (other branches) 2018-08-04 15:03:53 +02:00
vis2k
ddc53e27cc NetworkConnection message logging improved: uses BitConverter instead of reinventing the wheel and always logs the complete message. Logging partial messages would cause a lot of problems when debugging. If we expected a message with length 20 and HLAPI shows only up to length 18, then this will be really difficult to debug. Also removed k_MaxMessageLogSize because it's not needed anymore. 2018-08-02 14:51:00 +02:00
vis2k
ee22bde50b Gitignore Rider 2018-08-01 12:40:33 +02:00
vis2k
6c80b054ac SendToTransport failed. error:WrongConnection error isn't shown anymore if someone disconnects, since this is expected behaviour and totally normal. 2018-07-28 15:54:56 +02:00
Paul Pacheco
d9418b1c84 Simplify OnSerialize generation
* Simplify generated serializer
* Add some comments to better understand what the weaver is generating
2018-07-27 16:22:43 +02:00
Paul Pacheco
497c6c5246 Provide a guideline for contributing code 2018-07-26 12:49:11 -07:00
vis2k
0ed342ecb8 NetworkConnection.SendBytes is now protected so that outside classes can't send random bytes to the client anymore. This is better & safer design and allows us to remove the redundant SendBytesToReady function 2018-07-26 21:09:59 +02:00
vis2k
3ceebaec78 SyncList uses SyncListMessage to reduce dependencies on SendBytes 2018-07-26 21:07:34 +02:00
vis2k
14fcafda0c NetworkIdentity.UNetUpdate uses UpdateVarsMessage to reduce depencies on SendBytes 2018-07-26 20:30:47 +02:00
vis2k
2b54665915 Weaver SyncEvent code doesn't manually construct the message anymore. The NetworkWriter is now passed to NetworkBehaviour.SendEventInternal, where the message is properly constructed. Reduces dependencies on NetworkConnection.SendBytes and avoids expensive GetComponent calls that the Weaver previously generated. 2018-07-26 20:09:51 +02:00
vis2k
83927f27b0 Weaver TargetRpc code doesn't manually construct the message anymore. The NetworkWriter is now passed to NetworkBehaviour.SendTargetRPCInternal, where the message is properly constructed. Reduces dependencies on NetworkConnection.SendBytes and avoids expensive GetComponent calls that the Weaver previously generated. 2018-07-26 19:33:38 +02:00
vis2k
1097d000ff Weaver Rpc code doesn't manually construct the message anymore. The NetworkWriter is now passed to NetworkBehaviour.SendRPCInternal, where the message is properly constructed. Reduces dependencies on NetworkConnection.SendBytes and avoids expensive GetComponent calls that the Weaver previously generated. 2018-07-26 19:15:42 +02:00
vis2k
75351927c1 Weaver Command code doesn't manually construct the message anymore. The NetworkWriter is now passed to NetworkBehaviour.SendCommandInternal, where the message is properly constructed. Reduces depencies on NetworkConnection.SendBytes and avoids expensive GetComponent calls that the Weaver previously generated. 2018-07-26 14:19:29 +02:00
vis2k
d7539fcef3 NetworkBehaviour.IsDirty: removed some empty trailing spaces 2018-07-26 12:54:18 +02:00
vis2k
2148351799 UNetBehaviourProcessor WriteMessage comments added to make this more obvious in the future. 2018-07-26 12:51:36 +02:00
vis2k
4b339931c5 UNetBehaviourProcessor: WriteCreateWriter Ldloc_0 call moved to WriteMessageSize. All kinds of WriteMessageX functions always load the writer, push the variable on the stack and then write it. Except WriteCreateWriter which didn't load the writer, they decided to do this in WriteCreateWriter right after it was created. This was terrible code because removing WriteMessageSize calls anywhere would break all following calls, since WriteCreateWriter already called Ldloc_0 and the next call like WriteMessageId would call Ldloc_0 again. 2018-07-26 12:36:44 +02:00