已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学校代码 学 号 1分类号 1密 级 毕业设计(论文)题目: J2me手机游戏(寻宝奇兵)设计于实现学习中心名称 专业名称 学生姓名 指导教师 年 月 日 北京航空航天大学毕业设计(论文) 第 42 页 摘要J2ME(Java 2 Micro Edition) 是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。特别是手机性能的逐渐增强,手机作为一个游戏平台越来越成熟了。本论文着眼于J2ME技术的应用,开发一款可用的手机游戏程序寻宝奇兵关键词:J2ME 手机游戏 手机Abstract J2ME 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 phonespan (for) gold.This dissertation introduces J2ME and its relative technology as well as this programs structure and analysis of implementation in details.Key words: J2ME mobile game mobile目 录1. 背景与意义11.1 手机软件行情11.1.1 娱乐游戏业务11.1.2 应用程序业务.21.2 Java手机的优点31.3 手机游戏发展现状31.3.1 嵌入/内置式游戏41.3.2 In-Fusio ExEn娱乐平台41.3.3 J2ME平台41.3.4 Synergenix Mophun平台41.3.5 BREW游戏平台51.3.6 未来手机游戏趋势52. J2ME开发环境及相关技术62.1 J2ME简介62.2 J2ME的相关特性62.2.1 Configuration简介62.2.2. Profile简介82.3 开发平台以及工具102.3.1 关于jbuild102.3.2 关于Wireless Tool Kit112.3.3 关于Photoshop113. 游戏策划与设计123.1 游戏简介123.2 主菜单设计123.3 游戏场景设计133.4 人物素材动作的设计153.5 建筑素材的设计163.6 地表绘制173.7 建筑和人物的绘制183.8 地图的滚动183.9 脚本事件183.10 战斗处理193.11 Npc行为模拟194. 程序设计及主要代码实现204.1 程序的主要类清单以及关系图214.2 MenuMIDlet类224.3 MenuCanvas类244.4 GameDisplayable 类264.5 Map类284.6 Role 类304.7 RoleAction 类304.8 ActionFrame 类314.9 FloorUnit类324.10 TitleUnit类324.11 Date类335. 游戏测试与打包345.1 程序的工程文件列表345.2 程序运行的菜单345.2.1 主菜单355.2.2 帮助菜单365.2.3 退出菜单375.3 游戏界面375.3.1 脚本提示界面385.3.2 攻击界面395.4 打包396. 总结与展望406.1 本程序总结406.2 经验和感想40参考文献421. 背景与意义1.1 手机软件行情2007年全球共销售了大约11.5亿部手机,手机市场主要靠非洲和亚洲手机销量上升拉动,欧洲的手机销量保持稳定。2007年中国的手机年销售量达到1.9亿部,手机的普及率是39%,拥有5.25亿用户。中国在手机生产制造领域的优势不断加强,手机在中国自身的信息技术市场扮演的角色也越来越重要。 经过五年的规模化发展,中国手机市场已进入成熟期, 2007年销量将达1.5亿部,同比增长23.1%;销售额将达1661亿元,受低端手机份额扩大的影响,销售额同比下降0.3%。2007年,诺基亚生产了4亿3710万手机,三星生产了1亿6120万部手机,摩托罗拉生产了1亿5900万,紧挨着的是索尼爱立信,生产了1亿340万部手机,而且LG生产了8050万。其他公司生产了1亿8430万部手机,所有的公司将总共出售12亿4千万部手机。 2007年,各大手机厂商采用不同策略推动市场发展,导致品牌竞争激烈。诺基亚推动娱乐市场战略并涉足互联网服务领域;索尼爱立信弥补智能手机软肋;三星放下架子攻低端;摩托罗拉发展受阻,其他国外品牌如LG、飞利浦等表现不佳。多普达锋芒毕露,其他国产品牌在生死线上挣扎。手机市场再现黑马,苹果高调入市,魅族、纽曼先后进入手机市场。 预计到2011年,全球市场售出的手机中有四分之一的产品将是超低价手机。未来五年,印度将是超低价手机的最大市场,其超低价手机年销量将从2006年的900万部增加到2011年的1.16亿部。1.1.1 娱乐游戏业务纵观IT产业的历史,就像军事的发展时常推动计算机的演化一样,计算机游戏已经成为技术创新背后的动力之一。计算机游戏者渴望更加强大的硬件计算能力;渴望不受不同的软件的限制无论是将图形强制在人工智能(AI)上 还是网络安全性。游戏开发者和玩家常常是前沿计算机技术的最早的采用者。由于他们的创新天性,游戏不再是由大型采购公司控制的技术产品游戏领域总是有充足的空间给那些在这方面有天分的单个创新者。 手机游戏的盈利主要是由于它们的涉及面很广。手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级趣味的人和青少年身上,而手机游戏则每个人都可以访问的到随时,随地。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限。但是,对于开发者来说,将控制台游戏迁移到手机游戏工程很大。因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。 一个成功的手机游戏大多具有以下特征: 1.易于学习: 既然手机游戏面向的是普通消费者而不是计算机专家,那么他们不可能深入的学习游戏技巧。消费者不会花几个小时去研究一个3元的手动操作的游戏。保持游戏的简单是最基本的要求。 2.可中断性: 多任务处理是手机生活方式的基本特征。一个好的手机游戏应该提供短时间的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。 3.基于订阅:手机游戏的盈利成功取决于他们巨大的使用量。一开始开发和设计每个游戏都是昂贵的。如果一个手机游戏开发者要赢利的话,重要的是:同一个游戏引擎,多个标题,基本的故事情节类似。基于订阅的游戏是不断产生收入的最好方法。 4.丰富的社会交互: 不管一个游戏设计得多好,只要玩家找到了它的根本模式或者玩完了所有的游戏路径很快就会厌烦这个游戏。对于一个基于订阅的游戏,重要的是与别的玩家合作以增强所玩游戏的智力和随机性。 5.利用手机技术的优点: 巨额的手机技术研发费用都花在提高设备和网络的可用性和可靠性上面。因此,手机设备硬件和网络协议与桌面/控制台世界(如全球定位系统(GPS)扩展、条形码扫描仪、和短消息服务(SMS)/多媒体信息服务(MMS)通讯)有着非常大的差别。好的手机游戏应该利用那些更新的设备特征和网络基础设备的优点。1.1.2 应用程序业务.移动电话可以说是最多人拥有的终端设备,实在举不出有哪些终端设备是拥有这么多用户的。而且,在可以搭载Java的终端设备中,也没有像移动电话这么普及的。用户人数越多,也就意味着人们使用您开发出来的应用软件的机会越大。这对一个您来说,是个很大的商机。如果能够充分利用移动电话的普及率以及通信与文件存储功能的特性,相信一定能够制作出很吸引人的内容。传统手机存在以下弊端: 1. 传统手机出厂时均由硬件厂商固化程序,程序不能增加、删除,有了错误也不能更新、修改,若要增加新功能必须另换一部手机。 2. 传统手机访问互联网是通过WAP(Wireless Application Protocal),所有网络资源必须接通网络才能在线访问,非常耗时、费用亦很高。 而Java技术在无线应用方面的优势非常明显: 1. 应用程序可按需下载,而不是购买由硬件商提供的套件,可升 级空间大。 2. Java技术提供了一个类库,它使的应用开发商可以创建更为直觉、丰富的用户界面(GUI); 3. Java技术使网络带宽的应用更为有效,因为应用程序可以下载到器件上, 并在本地运行,仅仅是在连接到服务器时才会占用网络带宽基于以上分析,Java手机将具有很好的发展前景,是未来手机的发展方向,是业界的热点。1.2 Java手机的优点Java手机软件平台采用的基本Java平台是CLDC (Connected Limited Device Configuration)和MIDP (Mobile Information Device Profile),是J2ME (Java 2 Micro Edition)的一部分,在中国一般称为“无线Java”技术。此前,有人把它叫做“K-Java”;其实,K-Java的叫法只是Sun公司在开发KVM Java虚拟机时的项目代号,在该技术被正式命名为KVM后,就不再用K-Java了。 KJava即J2ME(Java 2 Micro Edition),是Sun公司专门用于嵌入式设备的Java软件。以KJava编程语言为手机开发应用程序,可以为手机用户提供游戏、个人信息处理、电子地图、股票等服务程序。J2ME(Java 2 Micro Edition)是致力于消费产品和嵌入式设备的最佳解决方案。J2ME在设计其规格的时候,遵循着“对于各种不同的装置而造出一个单一的开发系统是没有意义的事”这个基本原则。于是J2ME先将所有的嵌入式装置大体上区分为两种:一种是运算功能有限、电力供应也有限的嵌入式装置(比方说PDA、手机);另外一种是运算能力相对较佳、并且在电力供应上相对比较充足的嵌入式装置(比方说冷气机、电冰箱)。因为这两种区分,所以Java引入了一个叫做Configuration的概念,然后把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;而另外一种装置则规范为Connected Device Configuration(CDC)规格。也就是说,J2ME先把所有的嵌入式装置利用Configuration的概念区隔成两种抽象的型态。 Java技术的开放性、安全性和庞大的社会已有资源,以及其跨平台性,即“编写一次,到处运行”的特点,使Java技术成为智能手机软件平台的事实标准。采用Java技术后,编写应用程序和提供服务的人就不必关心接受其服务的手机采用的是什么操作系统和芯片,只要按照Java的要求去写程序就好了;同样,生产手机的厂商也不必顾虑将来谁来提供增值服务。可以看出,采用Java技术,可以建立完整、高效的无线数据增值服务产业链,从而为用户提供灵活、个性化、内容方式多样的服务。1.3 手机游戏发展现状 到2008年6月,全世界已经有大约1亿部Java手机在使用,除中国大陆外共有53个移动运行商正式推出了基于Java技术的无线数据增值服务。中国移动通信集团已经建立了无线Java增值服务体系,并推出了“百宝箱”等服务品牌,包括游戏百宝箱、娱乐百宝箱、商务百宝箱、生活百宝箱等,已经于2003年7月10日开始正式商用。手机游戏开发一般都是开放式的开发平台,例如流行的开发平台,如J2ME。开发人员能够从网络方便的得到相应的开发资料,不论你的资金实力如何,只要你有兴趣,就能够迈入这个新兴的行业。而相关的厂商,例如通信设备厂家对于手机游戏开发秉承一种开发的态度,鼓励开发者在手机设备上开发游戏,通常都在网络中提供了自己手机的技术资料。下文对目前市面上流行的手机游戏平台做一个简单的介绍。1.3.1 嵌入/内置式游戏早期的手机功能简单、屏幕也仅仅是单色,手机厂商能做的,就是在手机内置一些简单的游戏。这些游戏都是厂商以自己的专属平台所开发的,这些发售时就内置的游戏在手机预存了多少就是多少,用户无法自己新增或删除。1.3.2 In-Fusio ExEn娱乐平台即使是手机屏幕变成了彩色,内置游戏如何好玩,但总而也有玩腻的时候。因此用户们也希望能够玩新的游戏或者象下载图片、铃声那样通过无线网络下载新的游戏。法国In-Fusio公司看中了这个市场,在2001年推出了ExEn(Execution Engine)游戏平台。通过把专属的ExEn芯片加入手机内,赋予手机彩色画面与流畅的执行速度,让手机也有掌上游戏机那样的效果。1.3.3 J2ME平台J2ME(Java 2 Micro Edition)平台是目前最火暴的手机游戏平台,尽管它还可以下载和安装一些小的应用程序。J2ME简单的可以理解为Java的移动版本,其MIDP(Mobile Information Device Profile,移动信息装置简表)架构就是专门为手机与PDA而设计。 目前MIDP有1.0和2.0之分,后者在兼容性以及游戏的多媒体表现力如音效和振动方面有更好的效果,此外通过测试软件显示,支持MIDP2.0的JAVA游戏在图形运行能力对比1.0版本也有更优秀的表现。由于J2ME的技术先进,而且又能跨平台运行,因此受到了众多手机厂家的支持,甚至成为现在用户购买手机的一项比较重要的技术指标。所以到目前为止,手机的游戏应用平台中,以支持J2ME的最多,而且J2ME软件开发商也有越来越多的趋势,J2ME已成为2002年下半年之后的行动游戏平台主流。1.3.4 Synergenix Mophun平台 Mophun是瑞典Synergenix公司于2002年开发出的全新移动游戏娱乐平台。Mophun的发音类似More Fun,主要就是针对游戏平台而设计的游戏语言,采用C程序代码来开发游戏,运行起来最稳定,速度上也比Java VM快许多倍(厂商宣称快100倍),可发挥出手机硬件的极限。同时,mophun 游戏平台能在极其有限的硬件资源上运作,其最低硬件需求是以12MHz运行的8位处理器,因而适用于现有的2G手机。 由于Mophun的API功能齐全,加上是采用本地代码,运行速度快的优势显而易见,这点对于支持Mophun和Java双游戏平台的索爱手机尤其明显。通常情况下排除其他因素,索爱手机在运行Mophun游戏时速度远远超过手机的Java游戏运行时的速度。另外,Mophun游戏在一次下载后就不须再付费(这点跟ExEn的理念一样),同时 Mophun还具备安全机制(防盗版),主游戏程序无法从手机中拷出,只提供游戏存盘转存到电脑中。 Mophun 游戏平台因为具备在极其有限的硬件资源上运行高效性能,可说是目前手机最佳的游戏平台之一。1.3.5 BREW游戏平台 BREW是无线二进制运行环境(Binary Runtime Environment for Wireless)的缩写。是高通公司2001年推出的基于CDMA网络的一个增值业务开发运行的基本平台。相对Java,BREW是一个更底层的技术。严格的说游戏仅仅是BREW的一部分内容而已。 BREW提供的功能环境就好像PC机上的操作系统一样,可以通过服务提供商下载指定类型的应用程序或游戏来使用。对于支持BREW的手机终端,在手机出厂时已经预安装了两个应用。分别为应用管理器(Application Manager)和移动商店(MobileShop)。1.3.6 未来手机游戏趋势 未来的手机游戏平台因为ATI和nVIDIA两大PC显示芯片厂商专业级水准的加入而更为热闹。在ATI推出手机和PDA手机3D多媒体芯片(包含专用的媒体处理器Media Processor及3D加速器3D Accelerator)后,老对头NVIDA也毫不示弱,公布了他们的3D多媒体芯片,并且应用于三菱和神达MiTAC的智能手机上。这些芯片在植入手机后能够有效的提升图形显示性能,使手机在进行多媒体演示和游戏时更够有出色显示效果。 不过这些厂家提供的都是硬件芯片,要完全发挥其在3D图形的表现能力还需要相应支持的API才能相辅相成,而目前主要的API包括2003年7月发表的OpenGL ES(OpenGL for Embedded Systems),就是OpenGL的嵌入式版本,是为嵌入系统而开发的小型标准三维(3D)图形应用编程接口(API),并受到那些意图将3D游戏引入移动设备的游戏开发商、手机厂商、游戏引擎供应商和3D图形芯片公司的热烈追捧。目前已知NVIDIA AR10与ATI Imageon 23xx 3D芯片,已符合OpenGL ES 1.0的标准。而最新Symbian OS 8.0版本也将支援OpenGL ES API。相信不久后,手机上也能玩像是CS、DOOM、Quake的FPS游戏了。2. J2ME开发环境及相关技术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 内所定义的核心类别函式库所建立。 CDC提供了一种虚拟机,以及支持像灵敏发报机、寻呼机、个人数字助理(PDA)和电视机顶盒这样的设备上的Java应用的基类库。这些设备的典型特征是具有一个32位的处理器和用来支持虚拟机和类库的超过2MB存储容量。CVM虚拟机正好满足了它们对于Java 2虚拟机特征集的功能需求。这是在小型平台上全特征的虚拟机。CLDC提供一个适合于小型的、资源受限的、连接的设备上使用的标准Java平台。这些设备的典型特征是具有一个16位或者32位的处理器和用来支持虚拟机和类库的160KB到512KB的总内存,它们通常以电池作为电源,并联入某类网络中,联网一般使用带宽时常小于9600bps的无线的、断断续续的连接方式。CLDC的核心是K虚拟机(KVM)。“K”标记反映了它们的大小是以kilobytes(千字节)衡量的这一事实。CLDC的特征也是包含一系列类库。CDC的硬件参数:2M以上内存。具有网络连接能力,通常为无线网络。需要实现java虚拟机规范的全部功能。32位或者64位的处理器。CLDC的硬件参数:512 KB 以下内存有限能源供应(通常使用电池)有限或非持续网络连接简单的用户界面16位或者32位的处理器从上述的标准中我们不难看出CLDC主要针对那些资源非常受限的设备比如手机、PDA、双工寻呼机等。而CDC主要面对那些家电产品,比如机顶盒、汽车导航系统等。简表是以配置为基础的,例如Mobile Information Devices Profile(MIDP)就是CLDC上层的重要简表。与配置的纵向特性不同的是,简表是横向的。下图是J2ME体系结构的框图:J2ME体系结构框图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。下面列举五个常用简表 ,每个简表的责任都是为了完善配置的不足。 简 表 完善配置 Mobile information devices profile (MIDP) 移动电话和呼叫器 CLDC Personal digital assistant profile Palm和Handspring的PDA 设备 CLDC Foundation profile 用于所有不需要GUI的CDC设备的标准简表 CDC Personal profile 替代PersonalJava的Foundation完善的简表 CDC RMI profile 提供RMI的Foundation完善的简表 CDC (1) MIPD简表Mobile Information Device Profile(移动信息设备简表 ,简称 MIDP ),第一个实现的简表,补充了 CLDC并且提供应用程序语义和控件、用户界面、持久存储器、网络和用于移动电话的计时器、双通道呼叫器和其他无线电设备。目前已经发展到2.0版本,相对与1.0而言,增加了屏幕布局控制类型,增加了浮点数的处理,增加了多媒体功能,增加了各种安全机制,针对游戏开发提供了专门的API。(2)PDA简表Palm公司是开发PDA简表规范的领头人, 这个简表也是完善了 CLDC,在相当长的一段时间内,它都将是 kjava类程序包的替代品。 Java规范建议这个 profile至少应当提供两个核心功能片段: 一个用户界面显示工具包,适合于 有限的尺寸和深度显示 和一个持久数据存储器机制。 显示工具包应该是抽象窗口工具包的一个子集, 而持久机制将为应用程序、数据、配置/环境信息提供简单的数据存储。(3)Foundation简表下面三种简表不是非常常见, 这三种简表的职责都是为了完善 CDC。 Personal和 RMI简表实际上是 Foundation简表的扩展。 Foundation简表的任务是担任一个基础简表,便于以后开发出来的提供图形用户接口、 网络等功能的简表附着在它之上。 除了用于基础简表, Foundation简表还提供完整网络的支持,不管有没有使用图形用户接口。(4)Personal简表在当前的规范需求下, Personal简表提供下一代 PersonalJava环境。这个简表允诺,提供互联网连接性和 Web保真度以及一个能够运行 Java applets的 GUI。(5)RMI简表回想一下 CDC配置为共享的、固定网络连接信息设备提供最小的 Java环境。 RMI简表将通过提供 Java到 Java的RMI来协助提供更好的网络连接性。 通过使用 J2SE ( 1.2.x或更高版本的 ) RMI,这个简表将允许这些网络设备与其他系统应用程序交互操作 (这个系统不必也运行 J2ME )。2.3 开发平台以及工具操作系统:Microsoft Windows xp 程序语言:Java 2 开发包: Java(TM) 2 Standard Edition (J2sdk1.5.2) Sun Micro. J2ME Wireless Tool Kit 2.2 IDE: jbuild 素材编辑工具:Photoshop CS2关于本作品的开发环境,整合J2DK+jbuild + Wireless Tool Kit,其安装配置过程为另一方面的内容也比较简单,在此不再赘述。可以这么说,JDK提供了虚拟机来运行应用程序,而WTK提供了模拟器,jbuild及其它插件提供了个开发测试程序代码的IDE集成开发环境。2.3.1 关于jbuildJBuilder是Borland公司开发的针对java的开发工具,使用JBuilder将可以快速,有效的开发各类java应用,它使用的JDK与sun公司标准的JDK不同,它经过了较多的修改,以便开发人员能够像开发Delphi应用那样开发java应用。JBuilder的核心有一部分采用了VCL技术,使得程序的条理非常清晰,就算是初学者,也能完整的看完整个代码。JBuilder另一个特点是简化了团队合作,它采用的互联网工作室技术使不同地区,甚至不同国家的人联合开发一个项目成为了可能。简单介绍一下Jbuilder的特点: 1Jbuilder支持最新的Java技术,包括Applets、JSP/Servlets、JavaBean以及EJB (Enterprise JavaBeans)的应用。2用户可以自动地生成基于后端数据库表的EJB Java类,Jbuilder同时还简化了EJ B的自动部署功能.此外它还支持CORBA,相应的向导程序有助于用户全面地管理IDL(分布应用程序所必需的接口定义语言Interface Definition Language)和控制远程对象。3Jbuilder支持各种应用服务器。Jbuilder与Inprise Application Server紧密集成,同时支持WebLogic Server,支持EJB 1.1和EJB 2.0,可以快速开发J2EE的电子商务应用。4Jbuilder能用Servlet和JSP开发和调试动态Web 应用。 4利用Jbuilder可创建(没有专有代码和标记)纯Java2应用。由于Jbuilder是用纯J ava语言编写的,其代码不含任何专属代码和标记,它支持最新的Java标准。4Jbuilder拥有专业化的图形调试介面,支持远程调试和多线程调试,调试器支持各种JDK版本,包括J2ME/J2SE/J2EE。JBuilder环境开发程序方便,它是纯的Java 开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,比较吃内存,这时运行速度显得较慢。2.3.2 关于Wireless Tool KitWTK 的全称是Sun J2ME Wireless Toolkit Sun的无线开发工具包。这一工具包的设计目的是为了帮助开发人员简化J2ME的开发过程。使用其中的工具可以开发与 Java Technology for the Wireless Industry (JTWI, JSR 185) 规范兼容的设备上运行的J2ME 应用程序。该工具箱包含了完整的生成工具、实用程序以及设备仿真器。目前各大手机厂商往往把WTK经过自身的简化与改装,推出适合自身产品,如SonyEricsson,Nokia Developers suit等,都属于此种类型;而通过JBuilder, Eclipse等IDE,J2ME开发包工具可以被绑定在这些集成开发环境中,进一步提高开发效率。2.3.3 关于Photoshop Photoshop是平面图像处理业界霸主Adobe公司推出的跨越PC和MAC两界首屈一指的大型图像处理软件.它功能强大,操作界面友好,得到了广大第三方开发厂家的支持,从而也赢得了众多的用户的青睐. ADOBE PHOTOSHOP最初的程序是由Mchigan大学的研究生Thomas创建,后经Knoll兄弟以及ADOBE公司程序员的努力ADOBE PHOTOSHOP产生巨大的转变,一举成为优秀的平面设计编辑软件。它的诞生可以说掀起了图象出版业的革命,目前ADOBE PHOTOSHOP最新版本为6.0,它的每一个版本都增添新的功能这使它获得越来越多的支持者也使它在这诸多的图形图象处理软件中立于不败之地。 Adobe产品的升级更新速度并不快,但每一次推出新版总会有令人惊喜的重大革新.Photoshop从当年名噪一时的图形处理新秀.经过3.0,4.0,5.0,5.5的不断升级,直到目前最新的6.0版,功能越来越强大,处理领域也越来越宽广,逐渐建立了图像处理的霸主地位. Photoshop支持众多的图像格式,对图像的常见操作和变换做到了非常精细的程度,使得任何一款同类软件都无法望其颈背;它拥有异常丰富的插件(在Photoshop中叫滤镜),熟练后您自然能体会到只有想不到,没有做不到的境界. 而这一切,Photoshop都为我们提供了相当简捷和自由的操作环境,从而使我们的工作游刃有余.从某种程度上来讲,Photoshop本身就是一件经过精心雕琢的艺术品,更像为您度身定做的衣服,刚开始使用不久就会觉得的倍感亲切. 3. 游戏策划与设计3.1 游戏简介游戏名 寻宝奇兵类型 rpg游戏内容 玩家在rpg游戏中体验扮演的乐趣, 在游戏世界里游走、学习、历险、厮杀,体验另一个社会的风土人情.3.2 主菜单设计本游戏的主菜单项目有“开始游戏”、“继续游戏”、 “游戏帮助”、“游戏退出”等。如图3-2-1“开始游戏” 玩家第一次开始一款游戏的时候都希望从头开始玩, 选择此项目 游戏进度从零开始 “继续游戏” 顾名思义 就是读取上帝断点处的记录,继续上次未完成的游戏进度。“游戏帮助” 记录有游戏操作方法、过关提示等 如图3-2-2“游戏退出” 退出游戏 如图3-2-3图3-2-1游戏主菜单图3-2-2游戏帮助图3-2-3游戏退出3.3 游戏场景设计场景是主人公展开游戏游历的场所,也是游戏剧情的场所。场景地形、地貌、气氛等元素对游戏的可玩性具有很大的影响。 在技术上现实了碰撞、遮挡以及一些动态元素, 使其场景具有更强的真实效果。 本设计实现了若干场景,如下下图:图3-3-1 野外场景1图3-3-2 野外场景2图3-3-3 室内场景1图3-3-4 室内场景23.4 人物素材动作的设计游戏设定三个人物角色 1.主角 令狐冲 2.骷髅兵 3.树怪主角的动作帧 如图3-4-1骷髅兵的动作帧 如图3-4-2树怪的动作帧 如图3-4-3图3-4-1 主角动作帧图3-4-2 骷髅兵动作帧图3-4-3 树怪动作帧3.5 建筑素材的设计火炬动画的切片 如图3-5-1 、3-5-2水柱动画的切片 如图3-5-3图3-5-1 火炬切片图3-5-2 火炬切片图3-5-3 水柱切片3.6 地表绘制1.用一个二维数组保存地表数组2.用for循环创建资源图块数组元素的对象3.把资源图图块画入相应的图块对象,并释放资源图。4. 嵌套for 循环行列 G.drawImage()画到手机屏幕上5.地表的碰撞实现 地表数组为负 表示碰撞块 为正表示一般可通行块图3-6-1 资源图图3-6-2 地图3.7 建筑和人物的绘制1.一个人物有若干动作, 一个动作有若干帧, 一帧若有干切片。 2.循环切片构成帧, 循环帧构成动画效果 。 3.建筑动画效果是个死循环, 帧与帧之间加个时间间隔使其产生动画不至于是重叠。 4.人物的绘制,动态效果的实现与建筑相似,只不过动画的由键盘响应事件触发,通过重装keyPress(int key)实现键盘响应事件。 3.8 地图的滚动1.角色的居中显示 以手机屏幕的原点坐标为参照物,地图原点的坐标绝对值+角色相对屏幕的坐标=角色相对地图的坐标,地图的移动表现在地表和建筑物的移动,因此绘制地表个建筑物的时候 把地图原点相对手机屏幕的坐标的绝对值 作为 偏移量 计算在内 就可以实现地图的 人物的居中显示和地图滚动。2.地图越界约束 左、上越界时 令偏移量=0 右、下越界时 令偏移量=地图的长宽-手机屏幕的长宽。3.角色越界约束 当人物坐标要想左、右、上、下移到地图之外时 分别令 人物坐标的等于 地图 最左、最右、最上、最下的坐标。3.9 脚本事件游戏事件 非脚本做法 role坐标=指定坐标时 g.drawString()常规脚本事件做法 二维数组保存脚本触发点 String数组保存 脚本内容 执行脚本 屏蔽按键 run()中添加是否执行脚本判断 定义脚本命令 解析脚本命令方法 命令格式 命令(参数1,参数2,.)多个脚本事件构造剧情线 用二维数组 第一维表示剧情id流线 第二维 表示 当前id,下个id 3.10 战斗处理角色添加攻击矩形 攻击判断 攻击矩形 和 碰撞矩形 碰撞判断两矩形
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【新教材】2026年秋译林版九年级上册英语Unit 5 Music speaks单元测试卷(含答案)
- 2026年中学政史心理课题分层提升全科中学教师招聘考试笔试试题(含答案)
- 2026年政策性银行综合岗银行招聘考试笔试试题(含答案)
- 2026年烟草市场品牌调研专员烟草公司招聘考试笔试试题(含答案)
- 2026 年脑梗死后遗症合并吞咽困难护理个案
- 2026年秋季大学开学第一课:独立生活第一课
- 2026年秋季新闻学专业开学第一课 学科发展简史讲座方案
- 2026年秋季药学专业开学第一课 专业技能培养路径课件
- 2026年秋季口腔医学专业开学第一课 实习实践与能力提升课件
- 中学项目BA楼宇自控系统施工方案
- 重大事故隐患整改报告的模板
- 鸿蒙应用开发认证考试题库及答案
- 2025年国企营销管理竞聘笔试题库(含答案)
- T CPCIF 0239-2023 石油和化工企业开车前安全审查导则
- 一次性使用止血套环产品技术要求北京中诺恒康生物
- 河北河北省事业单位2025年面向新疆巴州兵团二师生源高校毕业生招聘15人笔试历年参考题库附带答案详解
- 啤酒厂安全生产管理课件
- 苏州市新能源产业高质量发展三年行动计划(2025-2026年)
- 单板五级理论题目及答案
- 江苏中吴环保产业发展有限公司招聘笔试题库2025
- 小学二年段期末考试试卷(2篇)
评论
0/150
提交评论