895191516基于J2ME为平台的坦克大战游戏开发论文.doc
《895191516基于J2ME为平台的坦克大战游戏开发论文.doc》由会员分享,可在线阅读,更多相关《895191516基于J2ME为平台的坦克大战游戏开发论文.doc(51页珍藏版)》请在三一办公上搜索。
1、摘 要J2ME(Java 2 Micro Edition) 是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率。随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。本论文着眼于J2ME技术的应用,开发一款可商用的手机游戏程序坦克大战。本程序的界面和运作方式继承于日本任天堂公司在20世纪80年
2、代开发的Battle City游戏,将老少皆宜的经典作品移植到手机上来,为更流行的硬件平台提供应用软件。本论文介绍了任天堂红白机的软硬件特性、J2ME的相关技术及本程序的结构分析和具体功能的实现。关键字:J2ME,手机游戏, Java,坦克大战ABSTRACTJ2ME is a kind of fast developing technology implemented on various devices especially mobile communication equipments. It focuses on application for consumptive electron
3、ic products, providing revolutionary solution to the intelligentization and diversification of the equipment. It improve the efficiency of the development process thanks to its “Write Once, run anywhere” nature.When cell phone is getting ever more popular nowadays, with the implementation of Java te
4、chnology on mobile equipment, increment of capital on communication service exhibits its force on peoples everyday life, providing them ever fast information just in hand. This dissertation focuses on implementation of J2ME technology and has developed a commercial game suite run on mobile phonesTan
5、k. This application inherits many characters of the old fashioned game Battle City which developed by Nintendo in 1980s. It transports the classical product to mobile phones, offering corresponding software for such more popular hardware platform.This dissertation introduces the characteristic of Ni
6、ntendo FC machine and its software, J2ME and its relative technology as well as this programs structure and analysis of implementation in details. Key words: J2ME, mobile game, Java, tank, Battle City.引言Java语言是美国Sun Microsystem的James Gosling、Pratrick Naughton及Mike Sheridan等人于1991年精心设计出来的计算机编程语言,其构想在
7、于实现使用同一种编程语言所写出来的程序可以在不同的平台上运作。这种架构对于消费性电子产品而言是具有革命性的,因为在消费性电子产品中的处理器及操作系统各不相同,要在这些平台上开发程序必须要了解各个平台的特性,以及其提供的API使用方式,分别开发不同的版本才能执行,影响应用程序的普及性。近几年,由于微处理器性能的大幅提升,加上无线通讯技术的突破,手持式移动设备开始受到大众的青睐。短短几年内,手机已经升级了几代产品,普及率逐年攀升,生产效率不断上升,产品价格比个人电脑的摩尔定律有更惊人的下调,以至手机是大多是城市居民不可缺少的一件随身设备。继短信、彩信等服务之后,中国移动提供基于Java的百宝箱业务
8、,应用产品遍及商务应用、信息获取、英汉互译、游戏娱乐等多媒体领域。根据官方公布的统计数据,我国移动电话用户已突破3亿。依托这样的市场,一旦无线Java应用大规模开展起来,将会创造出比短信业务更为惊人的利润。Java语言原先的开发目的与市场的需求不谋而合,并且也已经成为手机应用程序开发的标准,国际大公司如Nokia、Motorola及Siemens等所设计的手机内都加入Java程序的支持,可见在不久的将来,Java将会成为移动设备上最热门的语言。手机中将Java语言引入,作为一种通用的开发标准,并将向市场推广普及仅仅短短几年,J2ME仍是一种新型的技术,中文资料除台湾出版过相关书籍外,国内相关介
9、绍资源很有限,国内J2ME开发商也屈指可数,名声较响的Digital-Red公司也仅成立于1999年。本文可算是对新技术的一些尝试,代表对无线平台应用程序推广的一些努力。本论文中第一章介绍游戏机软硬件历史、Java语言、J2ME及其相关技术;第二章介绍了开发工具和相关软硬件环境的背景;第三章分析该作品设计的思想和流程,介绍总体结构;第四章并详细阐述有关重点实现细节;第五章提及了开发过程、心得体会、经验和感想。目 录摘 要- I -Abstract - II -引言- 3 -第一章绪 论- 1 -1.1 手机软件现状- 1 -1.2 游戏业务及J2ME概况- 1 -1.3 任天堂(Nintend
10、o)的8位FC机器和Battle City背景介绍- 3 -1.4 本章小结- 3 -第二章 开发环境及相关技术的介绍- 4 -2.1 开发环境- 4 -2.2 Java语言的特点- 4 -2.3 关于JBuilder9- 4 -2.4 关于Wireless Tool Kit- 5 -2.5 Java Appication Manager- 5 -2.6 本章小结- 5 -第三章 程序结构、思想和相关技术- 6 -3.1 本程序需解决的有关技术问题- 6 -3.2 程序流程- 7 -3.3 绘图与MIDP2.0新增的GameCanvas包- 9 -3.3.1 提供低级绘制的Canvas类- 9
11、 -3.3.2 Graphics类- 9 -3.3.3 PNG格式- 9 -3.3.4 Game包中的新功能- 10 -3.3.5 有关绘图的一些技术- 11 -3.4 坦克的控制和敌方的智能运行- 11 -3.5 子弹的运行和控制- 12 -3.6 RMS数据库系统- 13 -3.7 内存使用的最佳化- 14 -3.8 混淆器(Obfuscator)的使用- 15 -3.9 模拟器的相关调试- 15 -3.10 本章小结- 16 -第四章 程序分析和具体实现- 17 -4.1 游戏进入前的选择- 17 -4.2 主游戏逻辑及其涉及到的若干类- 18 -4.3 坦克的共同行为- 20 -4.4
12、 玩家坦克的功能属性- 21 -4.5 敌人坦克的功能属性- 21 -4.6 子弹的运行和控制- 23 -4.7 记分系统- 24 -4.8 本章小结- 26 -第五章 总 结- 27 -5.1 本程序的总结和展望- 27 -5.2 经验和感想- 27 -致 谢- 29 -参考文献- 30 -附录 源程序代码- 31 -第一章绪 论1.1 手机软件现状 在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是传统手机存在以下弊端:1. 传统手机出厂时均由硬件厂商固化程序,程序不能增加、删除,有了错误也不能更新、修改,若
13、要增加新功能必须另换一部手机。2. 传统手机访问互联网是通过WAP(Wireless Application Protocal),所有网络资源必须接通网络才能在线访问,非常耗时、费用亦很高。而Java技术在无线应用方面的优势非常明显:1. 应用程序可按需下载,而不是购买由硬件商提供的套件,可升级空间大。2. Java技术提供了一个类库,它使的应用开发商可以创建更为直觉、丰富的用户界面(GUI);3. Java技术使网络带宽的应用更为有效,因为应用程序可以下载到器件上,并在本地运行,仅仅是在连接到服务器时才会占用网络带宽。基于以上分析,Java手机将是未来手机的发展方向,是业界的热点。1.2 游
14、戏业务及J2ME概况图1-1 Java 平台的结构虽然 Java 已经被用到许多企业级软体上,可是其实骨子里面还是非常适合用在嵌入式系统之中。Java平台演进到Java2后,Java平台分别针对不同领域的需求被分成四个版本,亦即J2EE、J2SE、J2ME以及JavaCard(其结构示意图见图1-1)。其中J2ME定位在消费性电子产品的应用上。这个版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。这个版本的应用层面相当广泛,会是未来Java平台发展的重点项目。J2ME 在设计其规格的时候,遵循着“对各种不同的装置而造出一个单一的开发系统
15、是没有意义的事”这个基本原则。于是 J2ME 先将所有的嵌入式装置大体上区分为两种:一种是运算功能有限、电力供应也有限的嵌入式装置(比方说PDA 、手机);另外一种则是运算能力相对较佳、在电力供应上相对比较充足的嵌入式装置 (比方说冷气机、电冰箱、电视机上盒 (set-top box)。因为这两种型态的嵌入式装置,所以Java 引入了一个叫做Configuration 的概念,把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;而另外一种装置则规范为 Connected Device Configura
16、tion(CDC)规格。也就是说, J2ME 先把所有的嵌入式装置利用Configuration 的概念区隔成两种抽象的型态。J2ME平台被认为是最杰出的手机游戏平台,它为开发者、设备制造商、网络通信公司和消费者广泛接受。它有一些非常重要的特征对所有组织都有益。因为J2ME应用在不同设备上都是便携式的,他们常常可在网络上下载和执行。如果没有正确的防范,它则为用户和无线通信公司冒着无数个安全的风险。幸运的是,Java被设计成一种安全的语言。所有字节码应用在执行之前都要校验;JVM在执行过程中监督应用的安全性和存储违反问题。MIDP v2 运行时间包括一个完全特征化的、基于域的安全管理员,它在应用
17、的数字签名者鉴别的基础上赋予应用API级许可。纵观IT产业的历史,就像军事的发展时常推动计算机的演化一样,计算机游戏已经成为技术创新背后的动力之一。计算机游戏者渴望更加强大的硬件计算能力;渴望不受不同的软件的限制无论是将图形强制在人工智能(AI)上 还是网络安全性。游戏开发者和玩家常常是前沿计算机技术的最早的采用者。由于他们的创新天性,游戏不再是由大型采购公司控制的技术产品游戏领域总是有充足的空间给那些在这方面有天分的单个创新者。手机游戏的盈利主要是由于它们的涉及面很广。手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级
18、趣味的人和青少年身上,而手机游戏则每个人都可以访问的到随时,随地。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限。但是,对于开发者来说,将控制台游戏迁移到手机游戏工程很大。因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。一个成功的手机游戏大多具有以下特征: 易于学习: 既然手机游戏面向的是普通消费者而不是计算机专家,那么他们不可能深入的学习游戏技巧。消费者不会花几个小时去研究一个3元的手动操作的游戏。保持游戏的简单是最基本的要求。 可中断性: 多任务处理是手机生活方式的基本特征。手机用户常常在任务(如等一个电子邮件或者等车)之间有一小段时
19、间。而游戏、日历管理、通讯和工作数据访问使用的是同一个设备。所以一个好的手机游戏应该提供短时间的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。 基于订阅:手机游戏的盈利成功取决于他们巨大的使用量。一开始开发和设计每个游戏都是昂贵的。如果一个手机游戏开发者要赢利的话,重要的是:同一个游戏引擎,多个标题,基本的故事情节类似。基于订阅的游戏是不断产生收入的最好方法。 丰富的社会交互: 不管一个游戏设计得多好,只要玩家找到了它的根本模式或者玩完了所有的游戏路径很快就会厌烦这个游戏。对于一个基于订阅的游戏,重要的是与别的玩家合作以增强所玩游戏的智力和随机性。在今天纷繁复杂的多玩家游戏中具有丰富社会
20、交互的游戏证明是成功的。 利用手机技术的优点: 巨额的手机技术研发费用都花在提高设备和网络的可用性和可靠性上面。因此,手机设备硬件和网络协议与桌面/控制台世界(如全球定位系统(GPS)扩展、条形码扫描仪、和短消息服务(SMS)/多媒体信息服务(MMS)通讯)有着非常大的差别。好的手机游戏应该利用那些更新的设备特征和网络基础设备的优点。 无违法内容:既然所有年龄/性别的人群都玩手机游戏并且常常在公共/工作场合,就应该避免明显的暴力或者色情内容。1.3 任天堂(Nintendo)的8位FC机器和Battle City背景介绍图1-3 Battle City的界面 FC(Family Compute
21、r)主机在欧美又称Nintendo Entertainment System(可译作任天堂娱乐平台即NES)。FC主机在游戏业界造成的巨大冲击众所周知,这款主机在当时事实上几乎占领了世界各地多个国家的整个游戏市场,并使得逐渐图1-2 80年代中期的FC机器没落的北美游戏市场再度复苏。这款主机的性能比当时的多数主机都要强大,而价格上却便宜得多。主机所采用得处理器为CMOS 6502,一款已经淘汰的70年代中期产品。由于其价格便宜且极易使用,经过任天堂的改造后又焕发了全新活力。6502 芯片cpu 主频为8 bit,12 MHz,内存8k,画面 52色,同屏最多显示其中的13色,声音2个矩波,1个
22、三角波,1个杂音,1个PCM音频(见图1-2)。Battle City是其发售卡带中的一款力作,设置了35个关卡,可以双人操纵,画面设置了若干种类的建筑物和阻挡物,以消灭所有敌人为通关条件,并有接宝物等增加游戏效果的设置,画面精美,音效杰出,在PC机的80386处理器仍未面世的当时,能在硬件上运行这样的2D程序不得不令人惊叹,难怪常有人说游戏程序是最大限度发挥硬件水平的载体。其游戏界面如图1-3所示。1.4 本章小结:引言和第一章中介绍了手机在无线应用方向的当今概况,并介绍了游戏业务在当前社会的发展潜力。分析了J2ME在手机软件开发中起的重要作用,描述了本论文的相关背景。第二章 开发环境及相关
23、技术的介绍2.1 开发环境操作系统:Microsoft Windows XP程序语言:Java 2开发包: Java(TM) 2 Standard Edition (build 1.4.1_02-b06) Sun Micro. J2ME Wireless Tool Kit 2.1IDE: Borland Jbuilder 92.2 Java语言的特点1. 平台无关性Java引进虚拟机原理,并运行于虚拟机,实现不同平台之间的Java接口。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关。2. 安全性Java的编程类似C+,但舍弃了C+的指针对存储器地址的直接操作,程序运行时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 895191516 基于 J2ME 平台 坦克 大战 游戏 开发 论文

链接地址:https://www.31ppt.com/p-2393613.html