移动设备的繁荣发展,造成了五花八门的厂商与品种异常广泛的设备。例如两种设备也许具有相同的功能,但是实现的方法可能会有相当大的区别,例如对PDA和手持电话来说都具有显示的功能,但屏幕的实际尺寸却有很大的区别,支持的色深也不相同。重复的开发工作以及移植的不便性使得开发成本与开发难度不断提高,这就使得设备厂商要求拥有一个统一的开发平台。
面向这个问题Sun提出的J2ME的解决方法具有的优势有,从程序员的层面看Java语言简单易学,而且功能强大,减小学习该技术的梯度。而且大量的已有的Java程序员可以平滑的过渡到J2ME编程中来,为其提供大量的人力支持。从Java平台来说,天生的对移植性良好的支持,以及Java平台的整体解决方案,即与J2SE,J2EE的协作可以建立端对端的Java解决方案[6]。
J2ME其作为一个可以与J2EE、J2SE相提并论的平台,是在1999年的Javaone大会上提出的。随着时间的推移与技术逐渐地成熟,其平台本身的构架也逐渐演变。如图1.1所示,给出了J2ME一个总体的构架[7]。
图1.1 J2ME总体框架
JVM和KVM分别表示Java虚拟机,J2ME可以用两种不同的虚拟机,针对不同的内存大小,取用不同的虚拟机,大于2M的内存的电子设备,可以用JVM虚拟机,128KB到512KB内存的电子设备,可以用KVM虚拟机。在它上一层是配置,再上一层就是简表。配置是提供支持最大范围设备的最小的平台。简表是针对特定的设备提供相应的开发包集合。
J2ME使用配置(Configuration)和简表(Profile)定制Java运行时环境(JRE)。作为一个完整的JRE,J2ME由配置和简表组成,配置决定了使用的JVM,而简表通过添加特定于域的类来定义应用程序。
配置将基本运行时环境定义为一组核心类和一个运行在特定类型设备上的特定JVM。设备的配置为这些设备定义了一个基本的J2ME运行环境,其中包括虚拟机和核心的Java类库。可以把配置理解为一个针对某一种设备的最小的Java平台。其中包括满足该族设备的JVM(虚拟机)功能的最小子集和针对该族设备的Java类库的最小集合。要注意的是,配置主要针对的是系统级的特性,如基本的Java语言的特性,虚拟机的特性,以及系统级的Java核心类库等[8]。
J2ME配置(Configuration)包括两种,分别是连接设备配置(CDC)和连接受限设备配置(CLDC)。正如前面提到过的,配置分别针对的是某一族系的设备。J2ME所支持的设备主要分为两种,分别通过CDC和CLDC支持。CLDC设备通常有160KB到512KB的可用内存,并使用电池。它们还使用不一致的、小带宽的无线网络连接,可能没有用户界面。CLDC设备使用KJava虚拟机(KVM)实现,KVM是JVM的一种缩减版本。CLDC设备包括寻呼机、个人数字助理、无线电话、专用终端和128KB到512KB内存的手持消费性电子设备。CDC设备使用32位架构,至少有2MB内存,实现了具有完整功能的JVM。CDC设备包括数字机顶盒、家用电器、导航系统、购物终端和智能电话。
简表(Profile)定义应用程序。特别地,它向J2ME配置中添加特定于域的类,定义设备的某种作用。简表是构建在配置层之上的一层类库。它比配置的针对性更强。它提供配置层中所缺失的功能以支持特定的设备。这些功能包括对UI、对持续性存储的支持等。简表层提供了应用程序级的接口,应用程序就建立在简表层。上一个配置可能会有好几个简表(也就是说一个设备可以支持多个简表)。请注意简表针对的更特定的设备,从功能划分的角度来说也是如此。例如,针对某些移动设备,可能会定义一个SMS简表以提供收发短消息的功能。这种功能就只能定义在简表中,而不能定义在配置中,因为短消息这种功能是只针对手机等移动设备的[9]。SUN共定义了7种简表。它们是Foundation Profile,Game Profile,Mobile Information Device Profile,PDA Profile,Personal Profile,Personal Basis Profile和RMI Profile。
这里,手机游戏是使用Mobile Information Device Profile(MIDP),Connected Limited Device Configuration(CLDC)。
本文讲述了手机游戏开发的现状,以及相关的开发平台。同时讲述了J2ME的开发概要,以及麻将应用在J2ME平台上的系统设计。同时,考虑到手机平台的处理能力和内存资源有限,本文采用了知识库来解决这个问题。即通过网络,把处理过程复杂的事件都放到服务器端进行。同时,这样也可以轻易实现规则的转变,可以轻易的把杭州麻将该写成广州麻将。甚至,还可以把麻将改成红五等网络休闲游戏。
网络互联一直是一个热门的话题,无论从PC机还是手机等嵌入式设备。由于互联网造就了知识经济,信息时代的到来,使全球经济出现新一轮的增长,可见互联的重要作用。游戏作为一种娱乐活动,再没有比互动更加有意义的事了,网络游戏的盛行正因为如此。同样,实现手机游戏网络互联,是未来手机游戏发展的趋势,也是手机游戏赢利的增长点。
知识库已被广泛应用于金融系统,大型企业系统等领域,而游戏知识库目前正处于发展初期。利用游戏知识库,可以很好的实现对游戏规则的处理。一旦开发出一款游戏,对于开发其他同类游戏,只需对游戏规则作一些变换就可以完成对整个游戏的开发。利用游戏知识库,可以快速地开发多款游戏,大大地缩短了游戏开发周期,游戏知识库的应用在将来很有前景。
本课题通过研究两种麻将(杭州麻将,广州麻将)之间的共性和区别,构造一个游戏知识库,通过游戏知识库中规则的改变以实现不同麻将游戏。就杭州麻将来说,它是通过抓牌、吃牌、碰牌、杠牌等方式,使手中的牌按照相关规定的牌型条件和牌,其中在比赛前选定一张牌为“财神”(若这张牌为“财神”,那么这张牌可以替代任何牌,“财神”是随机选择的)。杭州麻将游戏的目的在于将手中的十四张牌凑成四组顺子或刻子,即可和牌。
而广州麻将跟杭州麻将的区别就是没有财神,对于广州麻将,由于其没有财神,所以跟杭州麻将的和牌规则是不一样的。
因此,本文采用游戏知识库中的产生式规则来实现和牌的规则判断,通过已有出牌的事实,到游戏知识库中进行匹配,找出相应的规则进行推理。
本文将探讨如何利用游戏知识库在开发原有的杭州麻将的前提下,快速开发出广州麻将。最后,对本文进行了总结,对手机游戏开发、手机游戏行业进行了展望。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页