A server/client side Socket/WebSocket library integrated with google protobuf(v3.11.4) for unity3d project.
- 1.The same codes and same workflows for server/client side use.
- 2.Extensible socket data packer/unpacker. Built-in with Google protobuf packer, but can easily to implement json/string packer.
- 3.Packet handler based on messaging system.
- 4.Multiple sessions/channels.
publicenumServer{LoginServer,GameServer,}publicclassNetworkController{privateBaseNetwork_network;publicNetworkController(){_network=newBaseNetwork(NetworkProtocol.TCP,newProtobufPacker());_network.SetMsgDispatcher(newNetworkMsgDispatcher());}publicvoidCreateSession(stringaddress,Serverserver=Server.GameServer){_network.CreateSession((long)server,address);}publicUniTask<INetworkMessage>Call(INetworkMessagemessage,Serverserver=Server.GameServer){return_network.Call(message,(long)server);}publicvoidSend(INetworkMessagemessage,Serverserver=Server.GameServer){_network.Send(message,(long)server);}publicvoidOnUpdate(){_network.Update();}publicvoidOnDestroy(){_network.Dispose();_network=null;}}