/showbbs.asp ProudNet 使用方法#3:WiFi<=>蜂窝越区切换功能 - 宁波大学bbs
海湾水港
新手天地
校园动态
招聘信息
跳蚤市场
活动专区
驴游部落
考试考研
外语角落
信息工程
体育世界
影音动漫
校外采风
谈天说地
毕业之后
心情文字
幽默笑话
社区站务
登录注册
宁波大学bbs > 影音动漫 > 浏览当前帖子 最新帖子进站窗口排行在线会员隐藏左侧栏
ProudNet 使用方法#3:WiFi<=>蜂窝越区切换功能
返回本版】  【发表帖子】  【回复帖子 浏览量  1617      回帖数 6
ms的论坛    等级  

楼主 发表于  2016/10/24 11:35:31    编 辑   

ProudNet是研究游戏软件开发的游戏服务端 &网络引擎。


TCP端,有以下特征。
*实时多人游戏环境下如果超出WiFi区域,TCP端中断。再重新连接。
*重新进入WIFI区域依然会终端重新连接。
*部分手机已断开连接,部分手机还是连接中,对于这种情况只能对不同通信社的手机进行一一测试开发。
*在接收信息过程中突然中断则无法确认对方收到了最后一条信息,对此要进行收信处理程序。
ProudNet 1.7 版本彻底解决了以上问题,增加了保持连接以及WIFI蜂窝越区功能,使用此功能对于越区后的断开连接只需短暂的延迟后即可自动回复正常运转。


越区功能是关闭状态的,如果想开启只需调用NetClient.Connect()进行以下设置即可。enableAutoConnectionRecovery= true
1. [C++]  
2. param.m_autoConnectionRecovery = true;  
3. c->Connect(param);  
4.
5. [C#]  
6. param.autoConnectionRecovery = true;  
7. c.Connect(param);  

假如客户端发生进入或者离开WIFI区域的现象,则内部开启连接转换操作而客户端则发生OnServerOffline事件。服务器发生OnClientOffline事件。在连接P2P的其他客户端则发生OnP2PMemberOffline事件。
ProudNet 内部切换过程开始的话收发reliable 信息全部保留。unreliable 信息全部消失。所以游戏过程中发生卡机现象,切换过程短则1秒长则10秒左右,
1. [C++]   
2. c->Set_OnServerOffline([...](CRemoteOfflineEventArgs &args){  
3. // args中包含了离线的信息。
4. ...  
5. });  
6.
7. [C#]  
8. c.ServerOfflineHandler = (args)=>{  
9. ...  
10. }  

完成连接切换后,客户端调用OnServerOnline,服务器调用OnClientOnline,连接P2P的其他客户端调用OnP2PMemberOnline,然后通过reliable接收信息。
1. [C++]   
2. c->Set_OnServerOnline([...](CRemoteOnlineEventArgs &args){  
3. // args切换连接结束后的信息。
4. ...  
5. });  
6.
7. [C#]  
8. c.ServerOnlineHandler =(args)=>{  
9. ...  
10. }

连接切换完成后客户端的HostID还是P2P以及与服务器连接状态都是和基准一致的。
简单来说,不管是否离开WIFI环境都不会对游戏开发有影响。

总结:
1. 在NetClient中调用Connect时enableAutoConnectionRecovery=true。
2. 切换开始时调用OnServerOffline,OnClientOffline,OnP2PMemberOffline。
3. 切换结束时调用OnServerOnline,OnClientOnline,OnP2PMemberOnline。

除以上功能以外,ProudNet考虑无线网络通信特征对于缩短延时加强了功能。相比TCP/UDP通信缩短了30%的延时。ProudNet对于无线网络环境下实时游戏具有显著的优势。
ms的论坛    等级  

2 楼 发表于  2016/10/24 11:36:55    编 辑   

ProudNet是研究游戏软件开发的游戏服务端 &网络引擎。
ms的论坛    等级  

3 楼 发表于  2016/10/25 14:29:02    编 辑   

游戏开发神马的不是太懂 玩游戏倒是会
ms的论坛    等级  

4 楼 发表于  2016/10/26 10:44:36    编 辑   

希望对游戏开发的人有所帮助
ms的论坛    等级  

5 楼 发表于  2016/10/27 11:22:46    编 辑   

明白的朋友举手?、、、、、、
ms的论坛    等级  

6 楼 发表于  2016/10/28 12:12:28    编 辑   

ProudNet是研究游戏软件开发的游戏服务端 &网络引擎。
ms的论坛    等级  

7 楼 发表于  2016/10/31 14:05:28    编 辑   

希望对这方面感兴趣的人有所帮助
1
表情
所有内容均为会员自愿发表,并不代表本站立场.