欢迎来到天天文库
浏览记录
ID:34522039
大小:351.11 KB
页数:5页
时间:2019-03-07
《休闲网络游戏平台框架设计与实现new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第27卷第5期佳木斯大学学报(自然科学版)Vo1.27No.52009年09月JoumalofJiamusiUni、’ersity(NaturalScienceEdition)Scp.2009文章编号:1008—1402(2009)05—0672—05休闲网络游戏平台框架设计与实现王斌,梁晓诚,侯辉I1.桂林理工大学,广西桂林541004;2.佳木斯大学信息电子技术学院。黑龙江佳木斯154007)摘要:休闲网络游戏以其轻松的游戏方式、多样的游戏特征,正逐步成为最时尚的网络娱乐形式.作为分布式软件系统重要应用之一,其设计过程中面临多种技术挑战,比如负载均衡、服务器端大量l/
2、O通信的管理、平台构架的可扩展性等.本文采用了ACE及框架、分层抽象、信号,槽机制等技术,完成了一个可扩展、易维护、可复用的休闲网络游戏平台框架.关键词:休闲游戏平台;ACE;框架;信号/槽机制中图分类号:TI~93.09文献标识码:A0引言1.1休闲网络游戏的通信传输过程随着因特网的普及,上网用户迅猛增加,选择网络结构中的每一层都依赖于它的下一层,同网络游戏娱乐的人也越来越多.据CNNIC统计分时,下一层功能的实现对上一层又是透明的.上层析,2008年中国国内上网用户:恪达到3.O5亿;网络工作时只需按要求把数据交给下一层,这样依次传游戏家数量接近4000万,其中,休闲
3、游戏玩家将递下去,最终由物理层传给网络对端.对端使用相达3000万.反的过程,依次传递给上一层,最终由应用层获得网络游戏的开发涉及广泛的软硬件技术,包括传来的数据.休闲网络游戏传输过程简要描述如下通信技术、程序设计、数学、人工智能、图形图像处表1.理、CPU和GPU等.网络游戏开发的难点在于熟练1.2休闲网络游戏的通信库的建立运用网络技术,把客户端和服务器端完整的结台在一起,通过网络通讯协议控制游戏的发展进度.这通信库的建立主要是为了方便封装底层通信就涉及到负载均衡、网络通讯、图形界面处理、远程过程,使上层游戏逻辑能够透明地使用通信操作.数据库、系统安全等互联网技术,软件
4、开发难度和通信库提供了收发数据包和从数据包叶1提取消息工作量都比较大.而休闹网络游戏巾联刚通信、创的功能.客户端和服务器端都将使用到这个通信建游戏的过程基本相同,单个游戏的逻辑处理规则库.不多,所以,}殳计一个结佝合理、适合休闲络游戏在客户端,选择了使用简单方便的WSAAsync.的平台来完成通信和基本的逻辑处理功能,并提供SelectI/O模型,首先要创建一个隐藏窗口,以便在有效地接口,使其他开发人员能够专注于各种具体socket上有消息时能够接收.游戏协议在发送之游戏逻辑层的开发,以减少网络游戏开发工作量,前,上层游戏逻辑已经把协议数据打包成字节流.加快开发速度;同时
5、,平台模型负载均衡、伸缩性而对游戏协议解包时,还需要知道协议的长度,所好,能够应对不同数量玩家在线游戏的需求;软件以,在实际发送之前需要把游戏协议的长度添加在框架结构扩展性强,易于维护.这样的平台已成为这个字节流中.由于客户端和服务器端都要进行这网络游戏业界研究的热点,具有良好的商业价值和个过程,把对字节流的再封包单独封装在一个类研究价值.中,以增加复用.通信库为服务器端提供前摄器(ACEProactor)1休闲网络游戏通信技术模式的服务器处理器(ACE—Sen’ice—Handler),完①收稿日期:2009—08—21作者简介:王斌(1979一),男,黑龙江安达人,佳
6、木斯大学信息电子技术学院计算机系讲师,工学硕士第5期王斌,等:休闲网络游戏平台框架设计与实现673成异步的数据发送和接收.通信库的结构如图l:表1网络游戏通信传输过程图1通信库结构图l显示了通信库中主要组件的关系.其中,PLink定义的一些功能.CServiceHandler内部使用一CTCPLink并不负责建立TCP/IP连接,主动或被动个线程安全的消息队列send—msg—queue来缓建立连接由子类实现.CTCPLink仅负责数据流的存向客户端发送的数据.另外还使用了一个ACE—封包和解包,以把游戏协议的长度加入包中或依据Message_Block类型的接收缓冲区v
7、—msg—包长度提取消息.每个数据包的结构如图2所示.block.ACE—Message—Block类型可以存放任何类型任何长度的消息,当然包括自己定义的消息.图2数据包结构2休闲网络游戏平台设计与实现CMsgWindow是一个隐藏的窗口,来处理socket端口上的消息;CWndServerLink负责实际的连接到2.1休闲网络游戏平台的布署服务器进行数据发送和接收.CWndSen’erLink中维该游戏平台的设计可以应对大量游戏玩家在护一个发送队列,在发送数据时,如发送队列中无线游戏的需求.数据中心服务器通常架设在游戏运数据
此文档下载收益归作者所有