




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计说明书手机单机版五子棋游戏设计与开发信息商务学院08060xxxXxxx学生姓名: 学号: 电子与计算机科学技术系学 院: 计算机科学与技术系 名: 专 业: 指导教师: 2012年5月中北大学信息商务学院2012届毕业设计说明书手机单机版五子棋游戏设计与开发摘 要J2ME(Java 2 Micro Edition) 是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率。随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。特别是手机性能的逐渐增强,手机作为一个游戏平台越来越成熟了。本论文着眼于J2ME技术的应用,开发一款可用的手机游戏程序五子棋。本论文介绍了J2ME的相关技术及本程序的结构分析和具体功能的实现。关键词:J2ME,手机游戏,五子棋The five in a row game based on JavaAbstractJ2ME is a kind of fast developing technology implemented on various devices especially mobile communication equipments. It focuses on application for consumptive electronic products, providing revolutionary solution to the intelligence and diversification of the equipment. It improves the efficiency of the development process thanks to its “Write Once, run anywhere” nature.When mobile phone is getting ever more popular nowadays, with the implementation of Java technology on mobile equipment, increment of capital on communication service exhibits its force on peoples everyday life, providing them ever fast information just in hand. Mobile phone whose capability is greater is more and more mature for game. This dissertation focuses on implementation of J2ME technology and has developed a commercial game suite run on mobile phonesGobang.This dissertation introduces J2ME and its relative technology as well as this programs structure and analysis of implementation in details. Keywords: J2ME,mobile game,Gobang中北大学信息商务学院2012届毕业设计说明书目 录1 绪论31.1 研究背景31.2 手机游戏国内外发展现状31.3 目的与意义31.4 论文内容及安排32 JAVA的开发环境32.1 J2ME简介32.2 J2ME的相关特性32.2.1 Configuration简介32.2.2 Profile简介33 需求分析33.1 基本需求分析33.2 功能需求33.2.1 此系统使用范围要求33.2.2 功能要求33.2.3 性能要求33.2.4 数据需求33.2.5 系统平台需求33.3 游戏玩法及规则34 游戏设计及实现34.1 软件模块总体设计34.2 详细设计34.3 游戏实现35 测试35.1 测试环境35.2 系统测试35.2.1 测试计划35.2.2 游戏界面菜单选项的功能测试35.2.3 按键事件的功能测试36 手机游戏开发存在的困难及解决方案36.1 手机游戏开发存在的困难36.1.1 移动开发存在的问题36.1.2 操作环境不兼容性问题36.1.3 不同的屏幕尺寸问题36.2 解决方案37 J2ME手机游戏前景展望37.1 J2ME手机游戏的优势37.2 J2ME手机游戏的开发意义38 总结3参 考 文 献3致 谢3第III页 共II页中北大学信息商务学院2012届毕业设计说明书1 绪论1.1 研究背景在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是传统手机存在以下弊端:1. 传统手机出厂时均由硬件厂商固化程序,程序不能增加、删除,有了错误也不能更新、修改,若要增加新功能必须另换一部手机。2. 传统手机访问互联网是通过WAP(Wireless Application Protocal),所有网络资源必须接通网络才能在线访问,非常耗时、费用亦很高。而Java技术在无线应用方面的优势非常明显:1. 应用程序可按需下载,而不是购买由硬件商提供的套件,可升级空间大。2. Java技术提供了一个类库,它使的应用开发商可以创建更为直觉、丰富的用户界面(GUI)。3. Java技术使网络带宽的应用更为有效,因为应用程序可以下载到器件上,并在本地运行,仅仅是在连接到服务器时才会占用网络带宽。基于以上分析,Java手机将是未来手机的发展方向,是业界的热点。1.2 手机游戏国内外发展现状根据英国Informa媒体研究公布的统计数据,2004年手机游戏市场的产值已经达到5.87亿美元。在欧洲,已经初步形成了一个规模庞大的行业市场。与欧美相比,日韩手机游戏市场已逐步走向成熟。以2002年为分界,全球手机游戏业务发展可分为两个阶段,之前移动游戏处于起步阶段,之后步入了大发展阶段。其实手机游戏业务最早发端于欧洲,但是欧洲运营商却没有把握好手机游戏市场发展的大好时机。日韩运营商较早认识到了手机游戏的价值,并借助国内信息产业飞速发展的机会,铺设了高速的移动数据传输网络并开始提供高性能的手机终端,并创造了运营商与游戏提供商之间良好的合作模式,日韩的手机游戏市场因此迅速发展起来。日韩还涌现了众多实力强劲的手机游戏内容提供商,如日本CYBIRD和韩国ComZUs,而传统的游戏厂商如世嘉和索尼在一开始就加入了手机游戏内容提供商的行列。2002年以后,欧洲的运营商意识到了手机游戏市场的广阔前景及其自身与日韩运营商之间的差距,开始急起直追,手机游戏市场日渐活跃。日本日本在手机游戏领域占据了绝对的领导地位。1999年,包括北美在内的很多国家和地区对手机游戏还一无所知时,日本就已拥有超过30万的手机游戏用户,占全球手机游戏用户的70%以上。日本在手机游戏领域走在世界前列的主要的原因是:其一,日本拥有庞大的移动数据业务用户群。经过近年来的不断发展,到2004年6月底,日本移动用户数已经达到8270万,其中7000万以上的用户使页用移动数据业务。 NTT DoCoMo的i-mode(它代表着information-mode,是一种移动电话服务)业务是世界公认的经营最成功的移动数据业务。而手机游戏作为其中的一项业务,拥有广泛的用户群。其二,日本是传统的电子游戏大国。世界传统游戏市场的巨头索尼、世嘉和任天堂都在日本,他们手中掌握了丰富的视频游戏和PC游戏资源,都可以转化为手机游戏产品。2004年, NTT Do2CoMo推出了新一代FOMA手机,具有更强大的“i-appli”(Java)游戏功能。新一代FOMA手机,把软件存储区域和数据保存区域(高速缓存)的总容量提高到230k的2倍以上,从性能上看已经超过了任天堂GBA掌机。随即日本著名的PC游戏厂商SQUARE-ENIX宣布面向新一代FOMA手机,开发勇者斗恶龙和最终幻想游戏的移植版。这说明,随着日本手机功能的升级和无线宽带网络数据承载能力的提高,手机游戏已经对高端的游戏厂商产生了强大的吸引力,手机游戏已不再是简单游戏的代名词。欧洲欧洲很早就推出了手机游戏业务,但在2003年以前,欧洲手机游戏市场还主要停留在SMS和WAP游戏时代。与日本相比,欧洲的手机游戏市场相对滞后。欧洲手机游戏产业发展滞后的原因主要表现在以下三个方面。第一,移动终端的问题。由于欧洲运营商和手机厂商之间没有深层次的合作,他们并没有采用类似日本 NTT DoCoMo那样的定制生产模式,而是普通的采购关系。这就导致在新业务推出的时候,相应的终端生产往往会滞后一段时间,从而成为制约瓶颈。第二,运营商封闭的数据业务模式阻碍了手机游戏提供商进入市场。在欧洲传统的移动数据业务模式中,手机游戏提供商必须向运营商支付租用网络的费用。这一费用对于刚刚出现的实力还很薄弱的手机游戏提供商来说难以承受。第三,欧洲国家众多、文化多元,手机游戏在传播上存在语言等方面的障碍。随着移动数据业务的不断发展和市场压力的不断加大,欧洲移动运营商已认识到改善手机游戏市场环境的必要性和紧迫性。在终端问题上,欧洲的运营商开始直接引入日韩的高端手机,打破了传统欧洲手机市场为欧洲手机厂商垄断局面;在经营模式上,他们也采取了开放的数据业务经营模式。比如Vodafone公司就推出了VodafoneLive!,通过合作分成的模式鼓励手机游戏开发商的积极参与。也有公司直接引入日本imode的运作模式和游戏内容。这些举措大大推动了欧洲手机游戏业务的发展。到2003年年底,欧洲手机游戏市场的环境已基本成熟,Java手机在欧洲已经十分普及,还出现了像N-Gage这样的专用手机游戏终端。中国根据国内最大的移动服务提供商中国移动通信公司网站日前公布的一组数据显示,目前中国移动的手机用户数量已经超出了美国全国总人口数量。中国移动通信公司的手机用户数量达到了已经超过美国的总人口数量。中国现在有着3亿多的手机用户,即使只有10%的用户每月只下载一款游戏,也足以使其形成一个规模庞大的产业。但是日前仅有不足1%的用户下载过手机游戏,这使得这块被无数人看好的市场并没有达到和人们预期相吻合的水平。可以说,手机游戏目前在中国只能算是初期阶段。1.3 目的与意义近来随着计算机与手机的快速发展,各种各样的游戏层出不穷,使得人们能有更多的娱乐项目,而棋类游戏能起到锻炼人的思维与修身养性的作用,而且棋类游戏水平颇高,大有与人脑分庭抗礼之势。现在的五子棋游戏软件基本上可以分为两类:一类是网络五子棋游戏软件,另一类是单机版五子棋游戏软件。很少有手机版的五子棋游戏软件。为了满足手机人群的需求,作者设计了这款手机版的五子棋游戏软件,可以供人们闲暇时间随时随地地进行娱乐提高自己的五子棋水平,实用性强。1.4 论文内容及安排本论文是在研究分析国内外手机游戏发展状况的基础上,通过使用J2ME语言,采用Eclipse作为开发平台,WTK作为开发工具,实现各子系统,保证系统的正常运行。包括友好的界面设计、提示信息的显示、有一定的机器智慧和可玩性、游戏过程的正常运行、游戏的正常退出等主要功能。2 Java的开发环境2.1 J2ME简介J2ME即JAVA 2 Micro Edition,它是Java 2的组成部分,与J2SE、J2EE并称。J2ME是一种高度优化的Java运行环境,应用于大量的消费类电子设备,如Cellular Phones(蜂窝电话)、Screen Phones(可视电话)、Digital Set-top Boxes(数字机顶盒)、Car Navigation Systems(汽车导向系统)等,同时也广泛被移动通信设备所采用,如移动电话、双向寻呼机、智能卡、个人电脑记事本(Personal Organizer)和掌上电脑(Palmtop)等。J2ME技术将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。J2ME 使用配置和简表定制 Java 运行时环境 (JRE)。作为一个完整的 JRE,J2ME 由配置和简表组成,配置决定了使用的 JVM,而简表通过添加特定于域的类来定义应用程序。与以前 Sun 公司推出的J2EE (Java 2 Enterprise Edition,Java 2企业版)、J2SE (Java 2 Standard Edition,Java 2标准版)规范相比,J2ME 不是一个单独的技术规范,而是一系列技术规范总称。这些规范定义了 Java 技术在资源限制的设备中的表现形式。J2ME 主要适用于小型嵌入式设备,这些设备与PC或是服务器设备相比没有统一的硬件标准、外观与操作方式,其功用也是千差万别。但是J2ME 在适用于这些设备的同时也保留了 Java 的传统特性,即任何时间和任何地点的代码具有可移植性、部署灵活性、安全的网络传输性,以及代码稳定性。正是因为如此,开发人员才可以借助J2ME 力量让编写的程序能够运行在其他型号或厂商的设备上。2.2 J2ME的相关特性2.2.1 Configuration简介J2ME 在设计其规格的时候,遵循着对于各种不同的装置而造出一个单一的开发系统是没有意义的事这个基本原则。于是 J2ME 先将所有的嵌入式装置大体上区分为两种 :一种是运算功能有限、电力供应也有限的嵌入式装置(比方说PDA 、手机);另外一种则是运算能力相对较佳、并请在电力供应上相对比较充足的嵌入式装置 (比方说冷气机、电冰箱、电视机上盒 (set-top box)。因为这两种型态的嵌入式装置,所以Java 引入了一个叫做Configuration 的概念,然后把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;而另外一种装置则规范为 Connected Device Configuration(CDC)规格。也就是说, J2ME 先把所有的嵌入式装置利用Configuration 的概念区隔成两种抽象的型态。其实在这里大家可以把Configuration 当作是J2ME 对於两种类型嵌入式装置的规格,而这些规格之中定义了这些装置至少要符合的运算能力、供电能力、记忆体大小等规范,同时也定了一组在这些装置上执行的 Java 程序所能使用的类别函式库、这些规范之中所定义的类别函式库为 Java 标准核心类别函式库的子集合以及与该型态装置特性相符的扩充类别函式库。比方就CLDC 的规范来说,可以支援的核心类别函式库为java.lang.* 、java.io.*、java.util.*,而支援的扩充类别函式库为java.microedition.io.*。区分出两种主要的Configuration 之後,J2ME 接著在定义出Profile的概念。Profile 是架构在Configuration 之上的规格。之所以有Profile的概念,是为了要更明确地区分出各种嵌入式装置上Java 程序该如何开发以及它们应该具有哪些功能。因此Profile 之中定义了与特定嵌入式装置非常相关的扩充类别函式库,而 Java 程序在各种嵌入式装置上的使用者介面该如何呈现就是定义在Profile 里头。Profile 之中所定义的扩充类别函式库是根据底层Configuration 内所定义的核心类别函式库所建立。2.2.2 Profile简介Profile是建立在某个configuration之上的特定API集合。一个configuration只定义虚拟机和基本的API集合,不定义建立应用程序的细节。因此Profiles往往包括应用程序生命周期的API,用户界面API以及存储API。一个Profile既可直接建立在Configuration上,也可建立在另一个Profile之上。为了在不改动Profile的前提下增加设备的功能,在Profile之外又提出了可选包,可将它们看成Profile的扩展,每个可选包对某个或某些profiles增加特定的功能。当对某个profile需要增加一个新的API时首先将它定义为可选包。如果随着时间的推移该可选包被广泛采用,它则可能成为某个或某些profiles的一部分。某些厂家特定的API与可选包起相似功能。J2ME的这种结构很好的适应了嵌入设备的巨大多样性。从低到高,您可根据设备的情况可采用不同的configuration,在同一configuration中您又可根据设备的用途选用不同的Profile,在您的设备中您还可采用多个Profile,如果您还嫌功能不够,尚有可选包可用。J2ME中第一个正式发布的Profile是MIDP,而且随后比较长的时间内未有其它Profile发布,以至有人把MIDP等同于J2ME了,有人把WTK等同于J2ME SDK(由于J2ME包含的范围很广,所以不太可能有厂商推出能支持各种Profile的开发工具)。MIDP只是J2ME中的一员,我们来看看到写本文为止有哪些Profile。由于每个Profile是建立在特定的Configuration之上的,所以我们在Profile后注明其基于的Configuration。目前已有的基于CLDC的Profile有MIDP,基于CDC的Profile有FP、PBP。3 需求分析3.1 基本需求分析总体设计是软件开发过程中的另一个重要阶段,在这一阶段中将根据需求分析中提出的逻辑模型,科学合理地进行物理模型的设计。这个阶段的主要目标是将反映用户信息需求的逻辑方案转换成物理方案,并为下一阶段提供必要的技术资料。总体设计应遵循以下原则:(1)整体性:软件是作为统一整体而存在的。因此,在总体设计中要从整个软件的角度进行考虑。(2)灵活性:为保持软件长久的生命力,要求该手机游戏软件具有很强的环境适应性。为此,游戏软件应具有较好的开放性与结构的可变性。(3)可靠性:可靠性是指软件抵御外界干扰的能力及受外界干扰时的恢复能力。(4)经济性:经济性是指在满足游戏软件需求的前提下,尽可能地减小游戏软件的开销。手机屏幕尺寸分为物理尺寸和显示分辨率两个概念。物理尺寸是指屏幕的实际大小。大的屏幕同时,要配备高分辨率,也就是在这个尺寸下可以显示多少个像素,显示的像素越多,可以表现的余地自然越大。现在手机行业发展迅速,不同大小屏幕的手机迅速发展,鉴于不同手机屏幕尺寸不同,我们在设计游戏的时候有一下一些要求:一 软件的界面简洁明了,操作简单容易。受手机屏幕大小和显示的影响,我们设计的软件界面必须是简洁的;手机键盘的不方便,游戏需要设计得易操作。二 软件具有人工智能算法原理要简单,并且运行快速。游戏是需要快速反应的。手机处理器的频率直接要求我们需要使用简单实用的智能算法。三 游戏要设置几个难度,便于不同玩家选择.玩家的游戏水平不一样,我们设置不同难度供各个水平的玩家选择。四 游戏棋盘的大小要灵活,根据不同手机屏幕可以调节。3.2 功能需求3.2.1 此系统使用范围要求此系统为智力游戏,适合于各类游戏爱好者。由于其经典性及其游戏的简单性,各类人士都可以也都爱玩。人们在与电脑对战享受娱乐的同时,也会体会到自己的智力也会有所提升。3.2.2 功能要求界面功能:设计了开局、退出、设置、关于等功能。游戏设置:针对人们棋艺的高低不同,设计了拜师学艺、初出茅庐、闯荡江湖、谁与争锋四个不同的难易程度。悔棋功能:人们难免失误下错棋,此功能提高了下棋的灵活性。胜利条件:黑白双方轮流落子,直到某一方首先在棋盘的横线、纵线或斜线上形成连续五子或五子以上仅对白棋而言,则该方就算获胜。3.2.3 性能要求该款五子棋游戏功能虽然简单,系统虽然不大,但有不同的难易程度由玩家自主选择,且在满足了玩家基本要求的情况下,电脑有一定的智能,能给予新手一定的帮助。3.2.4 数据需求数据字典:本程序采用非数据库策略,游戏时,只把部分数据保存于内存中。3.2.5 系统平台需求编程语言:Java操作系统:Windows xp系列开发工具:Myeclipse3.3 游戏玩法及规则现代五子棋专用棋盘为十五路(15X15),共225个交叉点。棋盘正中一点为天元。 对局开始时,先由执黑棋一方将一枚棋子落在天元点上,然后由执白棋一方在黑棋周围的交叉点上落子。但是,为了尊重对方和礼貌起见,持白棋的一方通常将盘面的第二着棋布在自己河界的一侧,即直止或斜止。此后黑白双方轮流落子,直到某一方首先在棋盘的横线、纵线或斜线上形成连续五子或五子以上仅对白棋而言,则该方就算获胜 。连珠五子棋的一个特点是先行的一方优势很大,因此在职业比赛中对黑方做了种种限制,以利公平竞争。五子棋的比赛规则如下: 1 黑先、白后,从天元开始相互顺序落子; 2 最先在棋盘横向、纵向或斜向形成连续的同色五个棋子的一方为胜; 3 黑棋禁手判负、白棋无禁手。黑棋禁手有“三、三”、“四、四”和“长连”, 包括“四、三、三”和“四、四、三”。黑棋只能以“四、三”取胜; 4 如分不出胜负,则到为平局; 5 五连与禁手同时形成,判胜; 6 黑方禁手形成时,白方应立即指出。若白方未发现或发现后不立即指出,反而继续落子,则禁手失效,不再判黑方负。 在本游戏中,没有采用职业比赛的规则,直接采用明间规则,一人一手棋,先成5为胜。4 游戏设计及实现4.1 软件模块总体设计利用层次图来表示软件中各模块之间的关系。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素(不能再分割的元素)。随着结构的精细化,层次方框图对数据结构描绘也越来越详细,这种模式非常适合于需求分析阶段的需要。从对顶层信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。本游戏软件一共分为三大模块:游戏选项、游戏设置与关于。每个模块的功能都是按照在调研中搜集的资料进行编排制作的。依据上述功能的分析,本游戏软件在三大模块的基础上每一大模块又分为几个模块:游戏选项包括三个模块:设置、开局、关于。游戏设置包括三个模块:棋盘大小设置、先后手设置、拜师学艺、初出茅庐、闯荡江湖、谁与争锋。游戏功能结构图如图4-1所示。各模块的详细功能如下:开始游戏:进行新一局的五子棋游戏。重新游戏:游戏结束或人方认输时可以进行新的游戏。悔棋:人机对弈时人方对自己的上一步棋重新思考。认输:人机对弈时人方自动放弃本局。退出游戏:退出此手机五子棋游戏软件。先后手设置:对人机双方下棋先后顺序的选择。关于:关于五子棋与此五子棋游戏软件的介绍。图4.1 功能结构图4.2 详细设计本游戏的操作流程:玩家在启动游戏后,即进入游戏主画面,屏幕开始显示为欢迎画面。用户按下Menu按钮后,就可以进行功能选择。在按下开局按钮后,开始游戏,按下退出键后游戏会退出。图4.2 软件系统功能图进入游戏后,可以进行游戏设置和开局。游戏设置里可以对键盘大小和电脑智能级别选择,也可对先行方进行选择,然后进入游戏。系统会对双方出的每一个棋子进行判断,如果没成五子,则对方继续游戏,如果连成五子,则对方输,游戏结束。图4.3 游戏流程图4.3 游戏实现public FIRMIDlet() display = Display.getDisplay(this); form = new Form(null); try imgSplash = Image.createImage(/splash.png); catch(IOException _ex) imgSplash = Image.createImage(1, 1); form.append(imgSplash); CMD_EXIT = new Command(退出, 7, 1); CMD_GO = new Command(开局, 4, 2); CMD_OPTION = new Command(设置, 1, 3); CMD_ABOUT = new Command(关于, 5, 3); form.addCommand(CMD_GO); form.addCommand(CMD_OPTION); form.addCommand(CMD_ABOUT); form.addCommand(CMD_EXIT); form.setCommandListener(this); myCanvas = new FIRCanvas(this); options = new Options(this); about = new About(this);/生成游戏主界面和其内各事件图4.4 开始界面 public Options(FIRMIDlet m) boardSize = 15; isComputerFirst = true; degree = 1; midlet = m; loadOptions(); form = new Form(游戏设置); gaugeSize = new Gauge(棋盘大小: + boardSize + X + boardSize, true, 10, boardSize - 10); form.append(gaugeSize); choiceFirst = new ChoiceGroup(null, 2); choiceFirst.append(对方先行, null); choiceFirst.setSelectedIndex(0, isComputerFirst); form.append(choiceFirst); choiceDegree = new ChoiceGroup(电脑智能级别:, 1); choiceDegree.append(拜师学艺, null); choiceDegree.append(初出茅庐, null); choiceDegree.append(闯荡江湖, null); choiceDegree.append(谁与争锋, null); choiceDegree.setSelectedIndex(degree-1 , true); form.append(choiceDegree); form.setItemStateListener(this); CMD_OK = new Command(确定, 4, 2); CMD_CANCEL = new Command(取消, 3, 1); form.addCommand(CMD_OK); form.addCommand(CMD_CANCEL); form.setCommandListener(this);/对游戏设置的选择图4.5 游戏设置界面public class About implements CommandListener private FIRMIDlet midlet; private Form form; private Command CMD_OK; public About(FIRMIDlet m) midlet = m; form = new Form(关于); form.append(五子棋起源于中国古代的传统黑白棋种之一, +它不仅能增强思维能力, +提高智力,而且富含哲理,有助于修身养性。 +本五子棋游戏仅作为学习范例n); CMD_OK = new Command(确定, 4, 2); form.addCommand(CMD_OK); form.setCommandListener(this); public Form getForm() return form; public void commandAction(Command c, Displayable s) if(c = CMD_OK) eBack(); /生成游戏关于窗口及返回图4.6 关于界面 public void manGo(int row, int col) if(row = 0 & row = 0 & col boardSize & tablerowcol = 0) goAt(row, col, 2); if(isGameOver() if(isComputerWon) myCanvas.setStatus(真遗憾!, 0xff0000, 2); else myCanvas.setStatus(恭喜你!, 65280, 1); else computerGo(); /对游戏输赢的判断图4.7 胜负界面5 测试5.1 测试环境运行环境:windows(XP/vista/win7)+Eclipse+EclipseMe+WTK真机: CLDC: 1.0MIDP: 1.0屏幕: 320*480 可选择不同类型的真机上进行测试 5.2 系统测试5.2.1 测试计划先在eclipse环境中运行,根据运行的情况,做进一步的处理。然后再打包在真机上运行,有时会出现,在eclipse环境中运行没有问题,但在真机上却会出现好多问题,根据出现的问题,再做出对应的处理。可能会出现一些技术上的困难,通过查资料问老师同学等途径来尽量解决5.2.2 游戏界面菜单选项的功能测试(1)菜单测试 打开游戏点击“开始游戏”输出:游戏开始时相应图片。结果:正常。 打开游戏点击“关闭游戏”输出:游戏结束。结果:正常。(2)帮助设置测试 打开游戏点击“帮助”输出:使用上下左右方向键控制方块,使其拼装成原始图。通过每次移动一个小方块,使其最后将多个小方块拼成原始图案。结果:正常。(3)音效测试 打开游戏“音乐选择” 输出:音乐开。 结果:音乐加载正常,一打开游戏边开始播放音乐。5.2.3 按键事件的功能测试(1) 确定功能测试 游戏过程中,点击中间键或“进入”时输出:进入游戏相应界面。结果:正常。(2) 返回功能测试 游戏过程中,点击“*”键或“返回”时输出:返回游戏主界面。结果:正常。6 手机游戏开发存在的困难及解决方案6.1 手机游戏开发存在的困难当电脑游戏被称为第九艺术,也许我们可以因此期待手机游戏会得到一个冠冕堂皇的称号因为手机游戏已经渐渐成为游戏业继网络游戏之后,又一座富饶的“金矿”,成为游戏市场中一颗冉冉升起的新星。但是现在,用“简陋”一词来形容现今的手机游戏并不为过,因为玩家大多无法对那个手掌里的小屏幕集中太多的注意力,特别是手机游戏的分辨率还很低,很容易让人想到十几年前的红白机游戏时代。这是以时尚标榜自己的年轻人无法接受的。而且现在很多手机用户对于手机游戏的认识还停留在经典的“贪吃蛇”,所以那些所谓的手机游戏实在让人提不起什么兴趣来。在游戏开发的初期阶段,并没有传统游戏的开发者参与。移动游戏时代是从WAP游戏开始的,主要是文字,并配有少量的图形。美国的移动运营商很快地注意并分析了这些问题,他们从日本I-mode的巨大成功中获取了经验。I-mode到去年年底已经有3000万用户下载娱乐游戏,这占公司年收入的很大一部分。移动运营商推出了下一代移动电话,能够支持因特网功能。与老式的黑白文字手机相比,这些手机更加快并且功能更加强大,它们带有彩色的屏幕和因特网浏览功能,使用比大部分个人电脑拨号上网速度更快的连接速度。虽然新手机还不是最理想的游戏平台,但它已经是个良好的开端。处理器、内存和色彩深度提供了游戏开发所需的因素。开发者正努力把其它游戏平台上的质量标准运用到这个平台上。当然了,一些问题仍然存在,然而这些问题终将被解决,就像PC平台游戏开发者使用不断改进的DirectX一样。当然在手机游戏投放市场和开发以及具体的制作过程方面还是存在的诸多的问题的。6.1.1 移动开发存在的问题开发移动游戏与传统游戏的开发有很多不同,想开发有吸引力的移动游戏尤其困难。这比开发控制台游戏或PC游戏更困难,因为众多的设备具有不同的存贮器、声音和显示性能。除此之外,你还必须合理利用J2ME这样的开发环境。开发移动游戏需要一套与普通游戏不同的方法和思路。移动游戏的预算很小而且时间安排很短。这个平台有许多种硬件和软件的组合,并且在硬件厂商之间没有多少共同点。花费更多的时间用来设计。开发者都有想用最简捷经济的方式做事的倾向。然而,为了创作一个世界第一流水平的游戏,你就必须使用世界第一流水平的开发过程。关键步骤是设计思路、试制、生产和产品质量检测。然而,因为设备和移动运营商的多样性,开发者不得不花费更多的时间用于前期的计划。这就存在这一种风险,那就是一个设计可以用于一种设备,但是可能就不能用在另一种设备。类似于硬件中的问题,开发两个API之间的基本功能。比较软件开发环境和围绕它们的不足进行针对性设计。开发者必须花费更多的时间了解这两个平台,但是最后的效果是很值得的。6.1.2 操作环境不兼容性问题本论文讲述的移动开发环境是J2ME,J2ME是获得美国大部分移动运营商支持的移动应用开发平台。J2ME是一个解释语言,运行在有虚拟机的任何操作系统上,通常运行速度很慢,而且在优化代码上有许多的困难。在过渡期间,为这个环境开发游戏成为一种挑战。例如,BREW 1.0支持掩盖的位图传送( Masked-Blit ),而J2ME MIDP 1.4不支持。而且,一些J2ME手机不支持声音。所以你的代码不应该使用掩盖的位图传送支持或者声音支持。比如说,如果你创建自定义位图字体,你可能认为你需要掩盖的位图传送。然而,你可以使用提前修正背景色来创建字体位图。这两个平台可以在载入一个文件的时候改变调色板,允许动态的调整字体背景色,但是文本必须出现在固定的背景上。6.1.3 不同的屏幕尺寸问题图形是游戏的一个关键的方面,描画速度是一个重要的程序函数。不同于控制台游戏和PC游戏,移动设备没有标准的屏幕尺寸或者长宽比,这就导致了很多兼容性问题。开发者可以通过编写非常灵活的背景和前景描画程序来解决这个问题。关键是创建一个允许快速扩展或者缩小游戏视窗的架构,并且不使图像变形或者生成让人看上去觉得别扭的屏幕比例。当然,你有很多方法来处理这个问题,最坏的情况就是你可以为每种手机的显示屏重新设计图形。或者,你还可以动态地调节你的游戏背景和其它图形。6.2 解决方案基于上述所提到的种种困难,在手机开发过程中就要有针对性的提出解决方案。在操作系统不兼容性的问题上我们可以在别的开发环境中使用面向对象的语言,这样就很能支持J2ME,因为它是一种面向对象的语言。在J2ME和其他开发环境中,任何使用JAVA写的代码都可以使用C+编写,并且可以更快更好。把所有的设备输出代码( 声音、显示、输入 )从游戏程序逻辑中分离出来。结构化游戏程序逻辑以便能够在J2ME和其他环境之间移植。在处理不同屏幕尺寸的问题上,使用像DrawRectangle和DrawCircle这样的固有描画函数创建尽可能多的可伸缩的图形。设计游戏,让位图图形可以伸展或者缩小1520,而不会影响玩游戏。在可卷轴的游戏中,根据需要扩大或者缩小可玩的区域。这样以来这个问题便迎刃而解了。最后在解决输入问题上,可以使用基于动量的控制来最小化缓慢的相应速度。设计解决同时按下多键的事件,提高帧速度,以便提高响应速度。这样以来,只要在这些关键过程中解决好这些问题就不难做出一款高质量的手机游戏了。7 J2ME手机游戏前景展望7.1 J2ME手机游戏的优势在手机游戏制作完成之后,其最大的优势就在于:让品质决定一切。很多人提到手机游戏都认为它前景诱人,并且通常都会有这样的想法:中国的手机用户接近2亿,如果这个市场上有10%的用户使用高端产品和服务,如果他们每人每月下载一个游戏,每个游戏收费5元,那么一年的手机市场就能轻松超过12亿元。确实,手机游戏拥有如此广泛的用户群,的确让其具有强势优势,并且一个更重要的优势在于,手机游戏将大大带动女性对于游戏的积极性,让女性朋友更容易接触游戏,更容易体会游戏带来的乐趣。全球移动游戏业2002年的收益已经达到4.364亿美元,而2008年将上升至93.4亿美元。手机游戏市场越来越被看好,成为游戏业新的增长点。目前的手机游戏都是就地取材于电脑游戏,一些比较受玩家欢迎的游戏直接移植到手机上面,节约了不少成本和周转时间。世嘉、育碧这样的大型游戏厂商已相继成立手机游戏开发部门,而诺基亚、摩托罗拉等手机厂商也大力投资手机游戏及其运行平台的开发。特别是手机游戏的开发相对于电脑游戏来说,具有开发预算少、开发周期短等特点,并且针对屏幕小、键盘等不适宜游戏使用的情况,目前游戏厂商都推出了针对手机游戏的专门机型,由此我们可以看出手机的产业链已经渐渐形成,整个行业也渐渐成熟起来。但是手机游戏要进入黄金时期,却必然要先费一番周折。首先就是彩屏手机的普及问题,让所有的手机用户都具有先进的技术平台支持就需要长时间的等待。而且真正意义上先进的游戏手机还没有出现,同时还受到来自GBA等专业游戏机的“排挤”。然而,如果从行业发展的角度看,手机游戏的未来一定是受大众喜欢的。从上面所讲到的手机游戏具有的优势,我想手机游戏必将在以后的通信舞台上有它的用武之地的,因为随着人们生活水平的提高,手机将会逐渐成为人们生活中不可缺少的物品之一。J2ME的前景会非常广泛,并且不会只局限于游戏,还将在移动应用软件等各方面发挥重要的作用,随着科技的发展,J2ME的应用限制也将大大的得到扩展。7.2 J2ME手机游戏的开发意义我们对于电脑游戏已经熟知,所以如果以这个标准来衡量手机游戏,那么手机在某种程度上可以看作是小型的计算机,它的处理能力与台式电脑的标准处理能力相比虽然很有限,但是已经能够运行一些小型的游戏。现在全世界手机用户很多,甚至已经超过电脑的普及率,并且手机更新换代的速度绝不比电脑差多少。所以手机游戏已经具有了它成长的基础,这个基础要比当年的电脑游戏稳固得多。最早的手机游戏只能看作是一种增值服务,并不具备形成一种产业的规模。这也是一般手机用户对于手机游戏的印象,所以很多人在买手机时,并不是很看重手机的游戏功能。例如:诺基亚手机的贪吃蛇就是在手机出厂前固化在芯片中,而且用户不能再自己安装新的游戏,所以手机游戏被看成某款手机的特殊功能也就不足为奇了。短信之后的手机游戏会是什么样?其实手机游戏肯定会走上电脑游戏的发展之路,而且以现在游戏开发基础和用户平台的更新速度,估计手机游戏的发展速度将会是电脑游戏的几倍以上。而且手机游戏的开发也将应用于各种新技术之上,让用户更容易拥
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年环境监测采样质量控制技术考核试卷
- 抵押合同出租合同(标准版)
- 无房产证房屋买卖合同(标准版)
- 土地承包挖沙合同(标准版)
- 弱电工程分包合同(标准版)
- 2025年重庆烟草真题试卷及答案
- 2025年宾语从句题库及答案高中
- 难点解析-人教版八年级物理上册第5章透镜及其应用-透镜专题测试试题(解析卷)
- 2025年公路水运工程施工企业安管人员考试(主要负责人A类)公路工程经典试题及答案
- (精)设备供货方案13篇
- 2025教资国考试卷真题及答案
- 2025年医院医护人员聘用合同协议
- 第三节 添加动画效果和超链接说课稿-2025-2026学年初中信息技术甘教版2011八年级上册-甘教版2011
- 2025民政如法考试题目及答案
- 部门级安全培训考核试题及答案解析
- 2025年成人高考高起点理化综合真题及答案(完整)
- 非遗文化活动演出方案策划
- 2025年秋新人教版物理9年级上册全册教案
- 2025至2030中国高纯硒粒行业发展形势与前景规划分析报告
- 招合伙人课件
- 差旅费报销标准(2025财政版)
评论
0/150
提交评论