基于JAVANIO技术开发手机网络游戏引擎客户端的思路

基于JAVANIO技术开发手机网络游戏引擎客户端的思路

计算机领域; 网络领域。

背景技术:

游戏引擎技术和互联网技术。

技术实现要素:

本发明采用J2SE、J2ME等技术实现移动网络游戏开发引擎。 通过对移动操作系统、移动游戏市场、移动游戏用户需求等分析,确定引擎的技术选型和主要功能模块; 通过对J2SE和J2ME技术的研究,确定了引擎服务器端和客户端的技术架构游戏引擎技术,提出基于JAVA NIO技术开发移动网游引擎服务器端,J2ME技术实现了移动网游引擎客户端的想法并实现; 以及引擎开发过程中涉及的核心业务:网络连接、地图场景、人物动作、任务副本与交易社交系统进行业务分析并提供解决方案。

附图说明

图1是服务器端技术架构图。

客户端技术架构如图2所示。

图3展示了系统架构中服务器端和客户端的层次。

详细方式

服务器端技术架构:服务器端引擎是整个游戏引擎的核心部分。 它是基于Java 2标准版的技术引擎,特别是java.nio和java.sql这两个系统。 引擎层底层是通用逻辑框架,以线程为基础游戏引擎技术,在逻辑结构上与其他子系统相连,包括地图系统、任务系统、交易系统、社交系统等模块及下属子系统、游戏内容建立在游戏引擎之上。 参见附图1。

客户端技术架构:客户端引擎包括一套基于j2me构建的逻辑处理系统,主要构建地图系统和基于UI的功能系统,包括角色系统、技能系统、任务、组队、聊天、邮件等。各个功能模块。 参见附图2。

客户端的主要业务逻辑是显示和交互,即接收服务器的指令并显示游戏的状态3D道具,同时接收玩家的指令并发送给服务器处理。

游戏服务器分为业务服务器和数据服务器,如图3所示。业务服务器又可分为登录服务器和逻辑服务器。 每个业务服务器都对应有自己的数据库服务器。 数据库服务可以统一部署音乐音效,也可以单独部署在多台服务器上。

业务服务器和数据库服务器分离。 不同业务服务器分离可以有效减少访问服务器的频率,使一组服务器可以为更多的客户端提供服务。 登录服务主要处理用户的登录请求,并向用户反馈正确的登录点信息。 用户正常登录后,逻辑服务器开始接管用户的信息。 逻辑服务器主要处理游戏的业务逻辑。 根据游戏规模的不同,逻辑服务器还可以按照世界、场景、人物等不同层次进行细分,从而提高服务器组的运行效率。

客户端Socket直连技术方案:关于移动端与服务器之间Socket接口的直连方法:基于MIDP Socket的网络连接架构,基本架构方案是先与服务器建立连接,然后使用管理数据包发送的线程。 ,使用另一个线程来管理接收数据包,并在退出游戏后关闭Socket连接。

由于网络接收和发送数据不是对称的,因此客户端可能会连续收到很多数据包。 这里我们通过数据包的逻辑缓冲区来实现。 客户端接收到的每个数据包后,先将其推入缓冲区,等待每个游戏循环周期,然后处理每个数据包。 还有一个用于发送数据包的网络缓冲区。 每个数据量占用整个网络缓冲区后,将缓冲区中的数据发送到服务器进行处理。 手机默认的网络缓冲区一般是4K。 这可以手动完成。 手动调整。

文章来源:http://www.xjishu.com/zhuanli/55/201510136470.html