手机游戏论文cj.doc

上传人:asd****56 文档编号:70326292 上传时间:2023-01-19 格式:DOC 页数:66 大小:1.01MB
返回 下载 相关 举报
手机游戏论文cj.doc_第1页
第1页 / 共66页
手机游戏论文cj.doc_第2页
第2页 / 共66页
点击查看更多>>
资源描述

《手机游戏论文cj.doc》由会员分享,可在线阅读,更多相关《手机游戏论文cj.doc(66页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、中 国 矿 业 大 学本科生毕业设计姓 名: 学 号: 学 院: 计算机学院 专 业: 计算机科学与技术 设计题目: 手机游戏开发 专 题: 指导教师: 职 称: 2006年 6 月 徐州中国矿业大学毕业设计任务书学院 计算机学院 专业年级 学生姓名 任务下达日期: 2006年 1 月 10 日毕业设计日期: 2006年 2月 20日至 2006 年 6 月 23 日毕业设计题目:手机游戏开发毕业设计专题题目:毕业设计主要内容和要求:1) 了解手机游戏的开发过程和特点;2) 能使用Java等高级语言进行应用程序开发;3) 熟悉JBUILDER或Eclipse等开发工具的使用;4) 开发一两款手

2、机游戏,实现基本的游戏功能;5) 最后提交成果包括:书面论文、论文.doc文件、演示程序及源码、系统设计文档.doc文件。院长签字: 指导教师签字:中国矿业大学毕业设计指导教师评阅书指导教师评语(基础理论及基本技能的掌握;独立解决实际问题的能力;研究内容的理论依据和技术方法;取得的主要成果及创新点;工作态度及工作量;总体评价及建议成绩;存在问题;是否同意答辩等):成 绩: 指导教师签字: 年 月 日中国矿业大学毕业设计评阅教师评阅书评阅教师评语(选题的意义;基础理论及基本技能的掌握;综合运用所学知识解决实际问题的能力;工作量的大小;取得的主要成果及创新点;写作的规范程度;总体评价及建议成绩;存

3、在问题;是否同意答辩等):成 绩: 评阅教师签字: 年 月 日中国矿业大学毕业设计答辩及综合成绩答 辩 情 况提 出 问 题回 答 问 题正 确基本正确有一般性错误有原则性错误没有回答答辩委员会评语及建议成绩:答辩委员会主任签字: 年 月 日学院领导小组综合评定成绩:学院领导小组负责人: 年 月 日摘 要近几年,科技发展为游戏的发展、应用开辟了新的途径和空间,并且台式电脑游戏的局限性为手机游戏市场创造了良好的发展环境和市场消费群体。随着支持Java的手机的普及,J2ME已成为目前最好的移动游戏开发环境。J2ME是一种专用于智能应用程序的开发平台,它是一个许多厂商支持的行业标准。经过阅读有关手机

4、游戏和J2ME的书籍、文献和网上资料,了解了手机游戏目前的发展前景,并对它的开发环境进行了分析和研究,并在此基础上开发了两款手机游戏程序俄罗斯方块游戏和拼图游戏。这两款游戏实现了游戏的基本功能,并应用到了基本的类模块设计,解决了各部分功能的编码,最终调试成功。通过这两款游戏,让我熟悉了手机游戏的开发环境、MIDP2.0的Game类、RMS数据库、内存使用的最佳化、开发游戏所涉及的各个类具体功能的实现和程序的结构分析,以及程序的调试方法。关键字:J2ME; 手机游戏; 俄罗斯方块; 拼图ABSTRACTRecently, the development of science and techno

5、logy breaks a new approach and space for the development and application of the games. 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 soluti

6、on to the diversification of the equipment. It improves 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 technology on mobile equipment, increment of capital on communicati

7、on 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 phonesCube and NumberSliderPuzzle. Keywords: J2ME; mobile game; Cube; Numb

8、erSliderPuzzle 目 录1 绪 论11.1 手机软件研究的背景与意义11.2 手机游戏的可行性分析21.3 手机游戏的特征31.4 论文组织结构42 手机游戏开发概述52.1 开发环境之间的关系52.2 Java语言62.3 J2ME概况72.4 开发环境概述102.4.1 J2ME 高级开发工具102.4.2 J2ME集成开发工具102.4.3 Java Appication Manager(程序管理器)122.5 开发环境具体配置133 手机游戏设计关键技术143.1 手机游戏需解决的有关技术问题143.2 提高性能的方法153.3 绘图与MIDP2.0新增的GameCanva

9、s包173.3.1 提供低级绘制的Canvas类173.3.2 Graphics类173.3.3 PNG格式173.3.4 Game包中的新功能183.3.5 有关绘图的一些技术193.4 RMS数据库系统193.5 内存使用的最佳化213.6 混淆器(Obfuscator)的使用213.7 模拟器的相关调试224 手机游戏设计与实现234.1 俄罗斯方块游戏234.1.1 游戏的规则与了解234.1.2 俄罗斯方块结构设计244.1.3 俄罗斯方块主要类模块设计264.1.4 俄罗斯方块的实现部分274.2 拼图游戏354.2.1 游戏的规则与了解354.2.2 拼图游戏结构设计354.2.

10、3 拼图游戏主要类模块设计374.2.4 拼图游戏的实现部分38结 论44参考文献45翻译部分46英文原文46中文译文52致 谢56 中国矿业大学06届本科生毕业设计 第56页1 绪 论1.1 手机软件研究的背景与意义近年来,随着中国电信增值服务行业的迅猛发展,手机游戏已经成为整个视频游戏领域发展速度最快的部分。中国互联网用户人数将在2005年底增至1.34亿,而中国的手机用户目前已经超过3.8亿。与PC游戏不同,手机游戏摆脱了线缆的束缚,具有随时、随地、随身的特点,更适合人们在移动中休闲和娱乐。显然,手机游戏产业一旦启动,其能量将不亚于目前的电脑网络游戏,发展速度将一日千里。数据显示,200

11、4年中国手机游戏市场规模超过8亿元人民币, 2005年手机游戏产业市场规模达到14.41亿元人民币1。自从Nokia的贪食蛇掀起手机游戏的风潮之后,现在已经很难再想象一部时尚的手机里头没有游戏。手机已经成为一个合情合理的游戏平台,越来越多的手机厂商和专业游戏公司开始关注手机游戏这个潜在的市场。自从J2ME规范被广大手机厂商认可和支持目前支持J2ME的手机也越来越多,几个大的手机厂商如Nokia、Motorola和Sony Erricson等都开发了支持J2ME的手机。虽然目前市场上大部分的J2ME手机的程序都是基于MIDP1.0标准的,但是手机的更新换代很快,同时由于MIDP2.0提供的良好性

12、能,所以最近支持MIDP2.0标准的各类手机层出不穷,而且价格也越来越便宜。基于J2ME的通用解决方案,这种方案不仅仅可以提供高质量的手机游戏,而且可以提供全方位的软件服务。正是由于无线业务的蓬勃发展和越来越多的无线厂商支持J2ME技术,J2ME也将拥有一个更广阔的发展空间。在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是传统手机存在以下弊端2:l 传统手机出厂时均由硬件厂商固化程序,程序不能增加、删除,有了错误也不能更新、修改,若要增加新功能必须另换一部手机。l 传统手机访问互联网是通过WAP(Wireles

13、s Application Protocal),所有网络资源必须接通网络才能在线访问,非常耗时、费用亦很高。而Java技术在无线应用方面的优势非常明显:l 应用程序可按需下载,而不是购买由硬件商提供的套件,可升级空间大。l Java技术提供了一个类库,它使的应用开发商可以创建更为直觉、丰富的用户界面(GUI);l Java技术使网络带宽的应用更为有效,因为应用程序可以下载到器件上,并在本地运行,仅仅是在连接到服务器时才会占用网络带宽。基于以上分析,Java手机将是未来手机的发展方向,是业界的热点。1.2 手机游戏的可行性分析 手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中

14、仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级趣味的人和青少年身上,而手机游戏则每个人都可以访问的到随时,随地。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限。但是,对于开发者来说,将控制台游戏迁移到手机游戏工程很大。因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。下面,根据手机游戏目前的发展状况、发展前景和优缺点,来进行了可行性分析:l 掌上电脑游戏、台式计算机电脑游戏的发展,普及为手机游戏的发展奠定了良好的基础。l 手机性能、技术的发展为手机游戏提供了可靠的技术支持。l 手机市场的不断扩大为手机游戏的发展开辟了更加广阔的市场

15、。手机游戏市场无国界限制,既可以立足国内手机用户,又可以进入国际手机游戏市场。l 手机便携性、使用的方便性可以突破台式计算机电脑游戏在时间、地点、环境、设施等方面的限制,从而使手机游戏具有更为广阔的发展空间。l 手机游戏更新快、下载方便、价格便宜,具有更强的竞争性。l 国家支持软件开发的政策以及各项优惠措施,更加有利于手机游戏的开发、应用与发展。1.3 手机游戏的特征手机游戏跟台式电脑游戏的区别使得要开发手机游戏必须具备一些特性,使其能够取长补短,有更好的发展。一个成功的手机游戏大多具有以下特征3: l 易于学习: 既然手机游戏面向的是普通消费者而不是计算机专家,那么他们不可能深入的学习游戏技

16、巧。消费者不会花几个小时去研究一个3元的手动操作的游戏。保持游戏的简单是最基本的要求。 l 可中断性: 多任务处理是手机生活方式的基本特征。手机用户常常在任务(如等一个电子邮件或者等车)之间有一小段时间。而游戏、日历管理、通讯和工作数据访问使用的是同一个设备。所以一个好的手机游戏应该提供短时间的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。 l 基于订阅:手机游戏的盈利成功取决于他们巨大的使用量。一开始开发和设计每个游戏都是昂贵的。如果一个手机游戏开发者要赢利的话,重要的是:同一个游戏引擎,多个标题,基本的故事情节类似。基于订阅的游戏是不断产生收入的最好方法。 l 丰富的社会交互: 不管

17、一个游戏设计得多好,只要玩家找到了它的根本模式或者玩完了所有的游戏路径很快就会厌烦这个游戏。对于一个基于订阅的游戏,重要的是与别的玩家合作以增强所玩游戏的智力和随机性。在今天纷繁复杂的多玩家游戏中具有丰富社会交互的游戏证明是成功的。 l 利用手机技术的优点: 巨额的手机技术研发费用都花在提高设备和网络的可用性和可靠性上面。因此,手机设备硬件和网络协议与桌面/控制台世界(如全球定位系统(GPS)扩展、条形码扫描仪、和短消息服务(SMS)/多媒体信息服务(MMS)通讯)有着非常大的差别。好的手机游戏应该利用那些更新的设备特征和网络基础设备的优点。 l 无违法内容:既然所有年龄/性别的人群都玩手机游

18、戏并且常常在公共/工作场合,就应该避免明显的暴力或者色情内容。1.4 论文组织结构本论文针对目前手机游戏的发展状况和前景对有关的技术进行了详细的阐述,包括开发技术、开发环境的选择,开发游戏的思想流程以及实现的具体细节。并开发了两款游戏 :俄罗斯方块游戏和拼图游戏。通过这两款游戏,进一步了解了CLDC的类库中一些常用的类,在运用中熟悉了它们各自的作用。本论文中第一章介绍手机软件研究的背景、手机游戏的优缺点,并对游戏进行可行性分析。第二章介绍了手机游戏开发环境的总体关系、各个开发工具的种类和作用、Java语言和J2ME及其相关技术、环境配置的顺序和方法。第三章分析手机游戏设计的关键技术、思想和流程

19、,介绍总体结构;第四章开发了两款游戏 :俄罗斯方块游戏和拼图游戏。通过流程图和各个类的详细阐述,来说明有关重点实现细节;第五章提及了开发的心得体会、经验和感想。2 手机游戏开发概述2.1 开发环境之间的关系手机游戏开发的环境对于一个初学者来说是比较难理解的,其中的开发包、开发工具由于种类繁多,再加上它们的作用不同,配置的先后顺序比较严格,所以初学者是比较容易搞混的。因此,在具体介绍开发手机游戏程序之前,在本章中先总述一下开发环境的之间的关系;再分别介绍它们的种类和作用;然后再说明安装顺序。开发环境之间的关系如2-1所示:图2-1开发环境之间的关系这个图表明了开发环境之间的关系和配置的步骤。在安

20、装了Windows XP操作系统的前提下,开始配置开发手机游戏所需要的各种工具。首先要安装J2SE SDK开发包,因为它是运行任何需要使用Java语言进行开发所必需的开发包;然后在此前提下,安装J2ME Wireless Toolkit2.1(WTK)开发包,安装2.2版本也可以,它们提供了4个模拟MIDP设备的模拟器。在开发包已经准备好的状态下,再安装JBuilder2005等开发环境。等到一切配置好了之后,就可以用Java语言来编写和调试手机游戏了。下面来依次介绍各个开发语言、开发包、开发工具的种类和作用。2.2 Java语言Java语言是美国Sun Microsystem的James G

21、osling、Pratrick Naughton及Mike Sheridan等人于1991年精心设计出来的计算机编程语言,其构想在于实现使用同一种编程语言所写出来的程序可以在不同的平台上运作。这种架构对于消费性电子产品而言是具有革命性的,因为在消费性电子产品中的处理器及操作系统各不相同,要在这些平台上开发程序必须要了解各个平台的特性,以及其提供的API使用方式,分别开发不同的版本才能执行,影响应用程序的普及性。近几年,由于微处理器性能的大幅提升,加上无线通讯技术的突破,手持式移动设备开始受到大众的青睐。短短几年内,手机已经升级了几代产品,普及率逐年攀升,生产效率不断上升,产品价格比个人电脑的摩

22、尔定律有更惊人的下调,以至手机是大多是城市居民不可缺少的一件随身设备。继短信、彩信等服务之后,中国移动提供基于Java的百宝箱业务,应用产品遍及商务应用、信息获取、英汉互译、游戏娱乐等多媒体领域。根据官方公布的统计数据,我国移动电话用户已突破3亿。依托这样的市场,一旦无线Java应用大规模开展起来,将会创造出比短信业务更为惊人的利润。Java语言原先的开发目的与市场的需求不谋而合,并且也已经成为手机应用程序开发的标准,国际大公司如Nokia、Motorola及Siemens等所设计的手机内都加入Java程序的支持,可见在不久的将来,Java将会成为移动设备上最热门的语言4。Java语言的特点:

23、l 平台无关性: Java引进虚拟机原理,并运行于虚拟机,实现不同平台之间的Java接口。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关。l 安全性: Java的编程类似C+,但舍弃了C+的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针入侵系统。它提供了安全管理器,防止程序的非法访问。l 面向对象:Java吸收了C+面向对象的概念,将数据封装于类中,实现了程序的简洁性和便于维护性,使程序代码可以只需一次编译就可反复利用。l 分布式: Java建立在TCP/IP网络平台上,提供了用HTTP和FTP协议传送和接收信息的库函数,使用其相关

24、技术可以十分方便的构建分布式应用系统。l 健壮性: Java致力与检查程序在编译和运行时的错误,并自动回收内存,减少了内存出错的可能性。Java取消了C语言的结构、指针、#define语句、多重继承、goto语句、操作符、重载等不易被掌握的特性,提供垃圾收集器自动回收不用的内存空间。2.3 J2ME概况虽然 Java 已经被用到许多企业级软体上,可是其实骨子里面还是非常适合用在嵌入式系统之中。Java平台演进到Java2后,Java平台分别针对不同领域的需求被分成四个版本,亦即J2EE、J2SE、J2ME以及JavaCard(其结构示意图见图2-2):图2-2 Java 平台的结构 J2SE

25、:J2的标准版,通常用在PC上。 J2EE : 扩展了给企业使用的EJB与Servlet等功能。 J2ME : 适用于家电或嵌入式设备功能的版本。用于嵌入式系统的Java被称为J2ME,全称是Java2 Platform Micro Edition。J2ME提供了HTTP、TCP等高级的Internet协议,如果使用J2ME开发的上网程序,可以很容易的访问Internet,同时J2ME开发的程序又是跨平台的,更方便开发人员开发移植性比较好的无线应用程序。而一个发展更快的领域就是手机游戏,这也需要使用新的开发平台,所以J2ME将是目前手机开发平台的最佳选择,本论文就是使用J2ME来开发俄罗斯方块

26、和拼图两款手机游戏5。J2ME定位在消费性电子产品的应用上。这个版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。这个版本的应用层面相当广泛,会是未来Java平台发展的重点项目。J2ME其技术架构如下:图2-3 J2ME的技术架构从这个架构可以了解到开发手机游戏所需要的一些基础知识:Optional Package是厂商选择性实现的,Profile是针对特殊硬件规定制定的高级API,Configuration则是起定义硬件功能与低级API的作用6。l 先从最下层的Configuration开始说起,它是J2ME规定嵌入式设备能够执行Ja

27、va程序的规范,J2ME把运算功能有限,电力有限这类的嵌入式设备叫做Connected Limited Device,规定这些设备如果能执行JAVA程序,则必须遵守哪些规范,而这些规范就定义在Connected Limited Device Configuration里面,简称CLDC,类似有个可连接,资源相对来说无限的设备则被称为Connected Device,同样有个CDC规范。我们平时所使用的手机属于Connected Limited Device范畴,支持J2ME的手机必须支持支持CLDC规范。就目前来看 CLDC有1.0和1.1两种,两者最大的不同则是后者支持浮点运算,而前者不支持

28、,CDC1.0和CDC1.1的核心类库(java.lang.*,java.io.*,java.util.*)和J2SE几乎没什么区别,CLDC1.0则差别较大,CLDC1.1相对来说增强了CLDC1.0的功能,最小内存数量也从160K提升到 192K。CLDC加入的支持扩展类库为有javax.microedition.io.*等。l 下面介绍Profile,既然Profile构建在Configuration之上,其所规范的配备需求自然不会比Configuration低,而我们通常所提到的Profile有Mobile Information Device Profile(简称MIDP),针对的是

29、手机和寻呼机,等移动设备。 l J2ME规范中还定义了厂商可以选择实现的包,那就是Optional Packages,通常不同的厂商不同的产品会有一些不同的功能,那么制造厂商可以通过Optioanl Packages规范来为实现某些产品的特殊功能制定相应的API。我们通常所说的J2ME开发,大部分其实都是MIDP程序设计,下面是几个名词的解释7:l MIDlet:一个可执行的应用手机程序的基本单位。l MIDlet Suite:许多MIDlet所构成的集合一般称做MIDP Application(MIDP应用程序)。l JAR文件(JAR File,.jar文件):实际是包裹着MIDlet S

30、uite的文件,属于ZIP压缩格式。l JAD文件(Descriptor File,.jad文件):用来描述MIDlet Suite的基本信息的文本文件,它是一个外部文件(不存在于JAR文件内部,独立存在的文件)。手机游戏的开发对于初学者来说是比较复杂且不易懂的,因此在开发手机游戏之前,我们要了解开发的最重要的前提是配置规范(Configuration)和CLDC的简表:J2ME的配置规范(Configuration): 提供开发所使用的类或接口。l CDC :有限连接设备的配置。针对配置比较好的设备,使用JVM虚拟机。l CLDC :连接设备配置。设备处理器能力有限,使用KVM虚拟机。(如手

31、机开发)CLDC的简表:l 简表:针对具体的J2ME配置规范,为完善CDC或CLDC配置文件,提供硬件方面更详细的说明。l MIDP:是CLDC实现的第一个简表。它提供了一个标准的运行环境允许在终端用户设备上动态地部署新的应用程序和服务。l MIDlet:实现MIDP简表的程序。属于手机程序的主程序。J2ME平台被认为是最杰出的手机游戏平台,它为开发者、设备制造商、网络通信公司和消费者广泛接受。它有一些非常重要的特征对所有组织都有益。因为J2ME应用在不同设备上都是便携式的,他们常常可在网络上下载和执行。如果没有正确的防范,它则为用户和无线通信公司冒着无数个安全的风险。幸运的是,Java被设计

32、成一种安全的语言。所有字节码应用在执行之前都要校验;JVM在执行过程中监督应用的安全性和存储违反问题。MIDP v2 运行时间包括一个完全特征化的、基于域的安全管理员,它在应用的数字签名者鉴别的基础上赋予应用API级许可。2.4 开发环境概述2.4.1 J2ME 高级开发工具高级的MIDP应用程序开发工具能够帮助开发人员简化J2ME开发过程,包括Sun提供的官方开发工具WTK和手机厂商提供的专属SDK.J2ME Wireless Toolkit8:WTK 的全称是Sun J2ME Wireless Toolkit,是Sun公司针对J2ME推出的用于手机和Palm等移动设备的开发包,是除手机厂商

33、的专用开发包外唯一的手机模拟器开发包。它通用性高,开发出的应用程序可保证能运行在大部分设备上,而不像专用厂商具有一定的不兼容性。虽然它没有强大的功能和完善的调试手段,但它提供了4个模拟MIDP设备的模拟器,提高了一个观看MIDP程序操作过程的方便途径。另外它还提供运行模拟器的最基本组件,是其他IDE需集成采用的必备元素。这一工具包的设计目的是为了帮助开发人员简化J2ME的开发过程。该工具箱包含了完整的生成工具、实用程序以及设备仿真器。 2.4.2 J2ME集成开发工具开发包的作用仅仅是提供了开发J2ME程序所需要的必备的类以及相关资源,例如模拟器等。但是开发一款好的程序,开发过程中肯定遇到这样

34、那样的问题,也肯定需要能够调试J2ME程序。为了方便J2ME程序的开发、打包和发布,就需要选择一款好的开发工具。市场上存在多种J2ME平台,针对如此多样化的环境,各家厂商都会推出属于自己的开发工具。针对这种情况,工具厂商提供了集成开发工具,让开发人员可以在统一环境下,随时抽换开发时或测试时所使用的底层开发工具。目前,常用的开发工具有以下几种9:l SunONE Studio 8.0 MESun Studio 8 为企业开发人员和独立软件开发商(ISV)提供了全面集成的工具套件,以在Sun 平台上进行企业应用程序的开发和部署。此外,它还为Solaris Operating System 提供了可

35、靠的、可伸缩的高性能应用程序。 Studio 8 为面向Sun 平台的开发人员提供了集成的工具集主要通过本机(C、C+ 和Fortran)二进制文件的方式提供。这种方式支持本机代码和Java的合并。Sun Studio 8 主要是对SunONE Studio 7 和Enterprise Edition的更新。l JBuilder2005JBuilder是目前最好的Java开发工具之一,在协同管理、对J2EE和XML的支持等方面均走在其他产品的前面。JBuilder是遵循Sun公司J2EE标准的可视化集成开发工具,是一种处于市场领先地位的跨平台环境,主要用于构建具有行业实力的企业Java应用程序

36、。JBuilder集成了Borland公司开发工具系列的优秀特性,使得使用过C+Builder,Delphi的程序员很容易的过度到JBuilder的开发环境当中。作为J2ME应用开发,JBuilder是非常理想的开发环境,从第九版以后到现在的2005版,JBuilder都自带了MobileSet,它内附J2ME Wireless Toolkit。 若要开发基于各个手机厂商机型的应用程序,最好同时到各个厂商的developer站点(如Nokia Forum、motocoder等)下载并在JBuilder中配置相关机型的SDK模拟器,这样可以使您的应用程序更好地适应相对应的真机机型10。l Ecl

37、ipseEclipse是一个开发源代码的、基于java的可扩展开发平台。Eclipse本身只是一个框架和一组响应的服务,并不能够开发什么程序。在Eclipse中几乎每样东西都是插件,实际上正是运行在Eclipse平台上的种种插件提供我们开发程序的各种功能。同时各个领域的开发人员通过开发插件,可以构建与Eclipse环境无缝集成的工具。 EclipseME作为Eclipse一个插件,致力于帮助开发者开发J2ME应用程序。EclipseME并不为开发者提供无线设备模拟器,而将各手机厂商的实用模拟器紧密连接到Eclipse开发环境中,为开发者提供一种无缝统一的集成开发环境。l NetBeansNet

38、Beans是一套完全以Java撰写而成、并且开放原始码的开发工具。Java Studio Micro Edition大致上是把NetBeans IDE和J2ME Wireless Toolkit结合在一起的产品。可以方便J2ME应用程序的开发者更容易追踪问题与除错。2.4.3 Java Appication Manager(程序管理器)手机中负责调配程序运行资源的管理后台是程序管理器(Java Application Manager)。它所使用的传输媒体可以是红外线、网络、以及其他可用来传输的媒体。Java Application Manager 会从网络上下载代表该Application S

39、uite 的JAR 档,接着在手机上安裝此MIDlet Suite,然后在手机开始执行该应用程序。整个详细的运作流程如图2-4所示:图2-4 JAM 工作流程图程序管理器(Java Application Manager)负责MIDlet的执行及其生命周期。它是一个用来执行J2ME的原生程序。2.5 开发环境具体配置l 操作系统:Microsoft Windows XPl 程序语言:Java 2l 开发包: J2SE SDK开发包运行任何需要使用Java语言进行开发所必需的开发包。 J2ME Wireless Toolkit2.1(WTK)开发包专门为移动设备开发而提供的开发包。提供了4个模拟

40、MIDP设备的模拟器。l 开发工具有三种: SunONE Studio 8.0ME (建议标准内存在1G以上) JBuilder2005 (建议标准内存在1G以上) Eclipse3.0.1 (占用资源少,方便简洁)本次设计用 Borland Jbuilder 9本章把开发手机游戏开发环境之间的关系先总述了一下,使对开发有个大体的了解;然后针对每一个环境又详细描述了它们的种类和作用;最后在这些种类中挑选出适合本次毕业设计的开发工具和开发包。3 手机游戏设计关键技术手机游戏作为一门新兴的技术有其特有的优点,如有庞大的潜在用户群、便携性、支持网络等;同时,手机游戏因为还处在发展阶段,因此还有很多不

41、足之处,如屏幕小、有限的颜色和声音支持、应用程序大小限制、高等待时间等缺点。因此,要开发手机游戏就要克服它的缺点,使它更好的发展下去。3.1 手机游戏需解决的有关技术问题在开发J2ME移动游戏过程中,遇到的最大的困难和障碍是,本来PC机和控制台上习以为常的应用在移动设备上却遇到各种限制,包括内存的、屏幕尺寸的、甚至色彩的限制。由于游戏中的用户输入、图形图像、动画、声音和振动的高交互性,这种限制在移动游戏中表现得比移动应用程序更加明显。因此,开发手机游戏有很多需要解决的问题11:l 游戏程序是一项精度要求很高的程序系统,因为其代码利用率很高。一个实时运行的最终作品,每秒都会运行成千上万行程序,绘

42、图事件、键盘事件都会以极高的频率在后台等待响应,若有丝毫的差别都将很容易导致程序在运行不久后可能出现严重错误,甚至死循环。因此,其逻辑设计应当相当严谨,需将所有可能发生的事件及意外情况考虑在设计中。l 游戏中为了美观,适用性强,可能需要采用外部文件引入的图片贴图,有关贴图,在MIDP2.0中提供了用于增强游戏功能的game包,使得解决静态或动态、画面背景、屏幕刷新的双缓冲等都有较好的解决方案。l 游戏的结束、开始、动态信息画面作为构成一个完美程序都是必不可少的重要部分。良好的用户界面更是吸引用户的硬指标,相关的美术构图也需要有一定的考虑。l 游戏的地图不可能通过绘图来解决。否则,不仅难于控制和

43、处理过多的元素,也会因过多的大型图片而不能限制程序的大小,失去手机上程序的原则和Java的优势。同时,地图关卡不宜保存在手机有限的内存中,而最好采取外部文件的读入读出方法。l 用户运行游戏时需要有分数记录的可能。如何采用合理的记分标准,需要进行适当的设计。记录分数的存储方式也需要有较好的解决方案。手机中由于处理器和内存空间、存储空间都十分有限,其数据库系统与普通PC大相径庭。其数据库结构较为简单,被称之为RMS系统。l 一般情况下,内存被认为是内存区域中的堆栈,在游戏执行的时候储存信息。在游戏终止后被释放。如果游戏需要的内存空间超过了移动设备可以分配的大小,游戏一般就不能够运行了。因此要建立一

44、个选择逻辑来处理内存耗尽情况的发生。l 另外,PC机上的硬盘在使用一段时间后就会出现碎片,在手机的存储空间上也会出现这种情况。例如需要写一个大的对象到内存中,但是找不到足够的一整块连续的空间,于是系统就将它分成几块分别存储在内存的各个空闲空间中。这不但会导致存储空间访问时间的增加,当内存中大的对象被清除后会留下很多内存空洞,从而导致新的对象被存储时也会遍布内存各处。l 由于J2ME是J2SE的子集,所以它并没有包含所有的包和类。也就是说要么不使用这些类,要么自己扩展所需要的类。例如,J2ME中不支持负电数,故不能进行小数运算,也不能使用运算,但是在游戏开发中,小数是经常要用到的。然而,可以用定点数学运算的方式来代替小数运算。l Java是基于虚拟机的半解释型编译系统,其执行效率较C+等完全编译后的程序会低很多,程序如果不进行精简和优化,将可能导致运行的不流畅。除开发过程中对结构上的控制、变量的使用、算法的优化等优化外,还可以使用混淆器(Obfuscator)进行程序打包后的优化。除了上面一般手机游戏都会遇到的技术问题外,还有一些针对某个游戏所需要解决的问题,例如本论文中的俄罗斯方块游戏。游戏中没有用到计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 休闲娱乐

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁