J2ME手机游戏的开发-Beckham Goal
摘 要
J2ME(Java 2 Micro Edition)是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率。随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。本论文着眼于J2ME技术的应用,开发一款简单的手机游戏程序--Beckham Goal。 论文在分析了实现小游戏的相关基础技术及理论后,对该游戏进行了功能需求分析、模块划分及总体设计,解决了游戏中涉及的碰撞检查以及其他若干关键技术,最后在J2ME平台下实现了该小游戏,并通过验证达到预期的效果。
关键词:J2ME;手机游戏; K-Java;碰撞检查目 录
1 引言 1
1.1 手机游戏概述 1
1.2 JAVA手机游戏的发展现状 1
1.3 手机游戏的发展前景 2
2 J2ME的概述与相关理论基础 3
2.1 J2ME的简介 3
2.2 J2ME的构架 3
2.3 J2ME游戏开发基础相关 4
2.3.1 基于精灵的动画 4
2.3.2 GameCanvas类来实现平稳动画 4
2.3.3 图形坐标 5
2.3.4 检测对象之间的冲突 5
2.4 常用开发工具及其配置与使用 5
3 需求分析与设计方案 6
3.1 需求分析 6
3.2 设计方案 7
3.3 游戏初步功能设计 8
4 游戏的设计流程以及实现 9
4.1 游戏的设计 9
4.2 游戏的实现 10
4.2.1. 图像和精灵的创建和绘制 10
4.2.2. 玩家按键移动的设置 11
4.2.3. 胜利及失败的判定 13
4.2.4. 球员运动轨迹的设置 15
4.2.5. 游戏中分数的记录 16
4.3 碰撞冲突机制的实现 20
5 系统测试 20
结 论 22
参考文献 23
致 谢 24
声 明 25
1.1 手机游戏概述
手机游戏几乎是当今市面上所有手机所必有的。在几年前的机型中,游戏都是手机中自带的,称为嵌入式游戏,由手机生产厂商设计并直接嵌入在手机里面。这样的游戏用户不能自行开发、添加及删除,其游戏种类取决于不同的机型,是一种单机游戏。随后的几年兴起了一种基于短信的游戏,由用户发送特定字符串给短信游戏提供商,来控制游戏的动作或剧情的发展。随着wap的兴起,出现了一种基于浏览器的游戏,和短信游戏差不多,由用户手机通过wap登录游戏提供商所提供的网址,然后填写或选择相应表单来操作游戏。上面两类游戏都是基于文本的,操作比较繁琐,游戏性不强。短信游戏每做一次操作(也就是发送一条短信)需要花费一毛钱;wap游戏无论是通过CSD上网还是通过GPRS上网都需要出上网费用。两种游戏的花费都比较高。现在新出的手机很大一部分都支持Java程序下载,而且这是一种趋势。由Java开发的游戏可以对图像进行操作,是动态的。而且可以接入网络,既可以开发单机游戏也可以开发网络游戏。随着彩屏手机的普及,游戏可以不再是黑白的,可随心所欲的为游戏中的不同物体赋予不同的颜色。
过去的手机是一个封闭的操作系统,除非用厂商自己的软件和工具,否则无法对手机的菜单进行改动,更无法在手机上附加其他应用。而K-Java技术的应用将摆脱这些传统的束缚,K-Java编写的应用程序可以兼容不同的网络协定,简单说就是,只要网络内容服务提供商提供K-Java服务,用户的K-Java手机就可以拥有无限扩充应用的能力。K-Java服务是一种新的移动数据业务的增值服务,它为用户提供了一个开放的平台,能更好地为用户提供全新图形化、动态化的移动增值服务。用户使用支持K-Java功能的手机终端,接入网络内容服务提供商的K-Java服务平台,可以通过手机随意下载Java应用软件,能方便地享受类似于Internet上的各种服务,如下载游戏、动漫、小说等,也可进行各种在线应用,如联网游戏、收发邮件、证券炒股、信息查询等。
1.2 Java手机游戏的发展现状
在欧美市场,由于较早采用GPRS技术,所以欧洲和美国运营商的K-Java也开展得较早,不过早期的应用并没能在个人消费市场激起太大的波澜。而日韩的无线数据业务从发展之初就将目标锁定在了游戏、娱乐等个人消费方面。K-Java技术能够利用手机有限的硬件条件使得PC上大量的互动性娱乐、游戏应用在手机上,正是凭借着这一技术特点,K-Java迅速成为了手机游戏的主流编程语言。在欧美市场,2002年此项业务的直接收入已经超过了2.45亿美元。
在中国,2003年2月15日,中国移动开始了大范围的K-Java应用测试。4月8日,无线K-Java服务被移动正式定名为“百宝箱”,并全面开始免费试用。而在发展较快的广东地区,更是从5月17日开始了大规模的K-Java业务推广,投入资金多达千万元。7月1日,中国移动宣布了“百宝箱”正式商用的消息,K-Java在中国市场的掘金旅程也将由此开启。
但是,K-Java目前在中国的发展速度却不够快,主要的原因是用户群体不足。首先是终端不足。在市场上,能够支持K-Java的手机很少,而且几乎都是几个国外主流品牌,其定位也较高,而国内品牌,介于成本和技术,一般都不含K-Java功能。与此同时,大量已有手机的老用户不会因此功能而重新购置一台新的手机。其次,在拥有K-Java功能的手机用户群体中,懂得或者愿意使用K-Java的人却更少。所以,我们必须期待更多含有K-Java功能的面向各个消费群体的手机上市和普及,以及用户对手机附加功能使用意识的加强。