一、服务器使用PEsocket
一、首先编写一个PEsocket代码,这个代码后面需要的可以下载,下载链接提供在下方了。在VS2017将PEsocket代码编译成dll文件以供unity使用。
具体操作如:点击项目的属性——>生成——>选择生成路径——>点击菜单栏的生成——>重新生成解决方案。
就会在指定目录生成了dll。
二、新建一个工程,直接去使用PESocket.dll。
1. 项目选择是控制台的应用,默认会创建一个项目,不需要,把项目都移除,留一个空的解决方案。
2. 在空的解决方案右键添加一个新的服务器工程。
3.如果服务器要跟客户端进行通讯,那就要有一个协议,所以要添加一个协议的工程。
还要再改一下框架,右击项目属性,把目标框架改为unity3.5的,因为要给unity使用的,所以要低于或者等于unity。
4. 引用。
5.网络消息需要继承自PEMsg类,并打上[Serializable]标签,便于使用C#语言的序列化功能。消息体支持多层嵌套。
6.在服务器里面引用。
7. 确定一下当前服务器的ip和端口,在NetMsg.cs定义一个类,相当于配置文件。
8.在服务器代码里边生成一个PESocket。
9.在server工程里添加一个session类,要继承PESession,负责与客户端进行连接的。
二、客户端unity使用PEsocket
一、把上面协议的工程导出来供客户端使用,跟上面生成PEsocket.dll文件的操作一样。
二、新建一个unity工程,新建项目路径选择如下。
三、创建一个场景,挂载脚本GameStart,编写脚本。
四、新建客户端的ClientSession,供上面GameStart使用。
五、在unity里边使用dll,只需要复制文件到项目里边即可
六、先运行服务器项目,再运行unity客户端项目,就可以连接通信了,如下。
七、在GameStart里边写一个日志接口,不然在unity无法查看到报错信息。