2024年5月8日发(作者:)
移动游戏
一、 引言
近来,移动游戏在提供个人娱乐方面变得越来越流行。这种流行使得移动游戏给手机用户,
游戏出版商和手持设备制造者带来丰厚的利润;移动游戏,在给游戏开发者和相关人员带来
无数商机的同时,处于极为重要的枢纽位置。据估计,到2009年,全世界的手机玩家有望
达到两亿两千万之多,移动游戏业将被规划并扩展到一个更高层次,为手机用户和手持设备
制造者带来更大的利润份额。
移动游戏可以分为三大类:
·嵌入式游戏:被硬编码到移动手持设备系统中的游戏,并随着设备一同发布。不久就会过
时。例如:随着诺基亚手机一同发行的贪吃蛇游戏。
·SMS游戏:通过发送文本消息来玩的游戏-例如,把SMS消息发送到游戏服务器-该服务器
处理这些SMS消息,然后再通过SMS消息形式发送回结果。经常是以在线竞赛和测验形式
出现。并不很流行,因为游戏的费用将随着把每一个SMS发送到游戏服务器而逐步增加。
·浏览器游戏:这些游戏可以使用移动电话的内嵌微型浏览器(专用于移动设备的网络浏览
器)来玩,在线或离线的方式都可以。玩家可以通过自己的手持设备或一个第三方游戏供给者
的游戏Web站点的方式在线玩这样的游戏,或下载它们后离线玩。这一类游戏又有很多种类,
例如单人或者多人游戏,网络游戏,离线游戏,街机游戏,等等。
在这三种类型中,浏览器游戏是今天最流行的移动游戏类型,这是因为它们具有创新性和
丰富的多媒体内容,引人入胜的表达与SMS游戏相比的低价位优势。本文将重点讨论浏览
器游戏开发。今后,术语"移动游戏"在本文专指"浏览器游戏"。
注意:本文集中于讨论2D游戏开发。因为今天流行的大部分的数字移动电话有很有限的资
源(小的屏幕,有限的内存和图形支持,繁琐的键盘输入),所以时下最适合于这些设备的也是最
具有商业可行性的游戏是2D游戏。但是,随着移动电话能力的不断提高,3D游戏在不久的
将来将广为流行。
移动游戏可用C++,Java(J2ME),还有Qualcomm公司的Binary Runtime Environment for
Wireless(BREW)平台来进行开发。
二、 为什么选择Java进行移动游戏开发?
尽管C++能够被编译成本机代码并且可以直接存取本机系统资源,以及与BREW(它允许
开发者使用任何希望的语言,包括C++,Java,XML和Flash)相结合为移动游戏开发者提供
端到端的解决方案,但是Java仍然是进行移动游戏开发的最流行的选择。Java,或更精确的
说是Java 2微型版本(J2ME)平台,被认为是开发移动游戏的最方便的语言。(要更多地了解
J2ME,请参考"What is Java 2 Micro Edition?")。J2ME如此流行的背后动力包括:
·J2ME遵循为大多数手持设备生产商所支持的工业标准,如今大多数的移动电话都支持
Java开发。
·J2ME是一个自由的和开放的平台。这使得开发人员投资很少,但却提供给他们必需的灵
活性以及大量的支持。
·它的高度可移植的特性("书写一次到处运行")保证一部为一个品牌/类型的手持设备开发
的游戏应用程序,将可以工作在其它类型的支持Java的手持设备品牌/类型上。
·它特别为小型设备进行了优化,是轻量级的,高度安全的,因为在其上开发的应用程序
不能存取或者影响运行在该手持设备上的其它应用程序。
J2ME包含移动信息设备轮廓(MIDP)API,它的设计是为专门开发包括手机在内的移动设
备应用程序,但切记它们的局限性和约束条件。而且,最新的MIDP 2.0版自己提供了一套完
整的API以用于游戏开发,这使得游戏开发更为简单和快捷。
现在,我们探索一下MIDP 2.0在移动游戏开发环境中的使用。
三、 MIDP2.0在游戏开发中的地位
MIDP2.0 API是一组具有特别性能的API,可用于开发安全的,内容丰富的多媒体应用软件,
包括适合于移动设备的游戏程序。MIDP 2.0基于以前的MIDP 1.0之上并提供一个更好的开
发平台以创建高效快速的移动设备应用程序。
MIDP 2.0进一步提炼了MIDP 1.0的特性和有关功能。有关这些新特性的信息请参考
What’s New in MIDP 2.0。新增添到MIDP上的重要特点之一是Game API,或更精确地说是
API包。通过该Game API,MIDP 2.0提供给游戏开发者现成的
程序模块,这些模块在早期的MIDP 1.0时是你必须从头开始创建的。这些模块以类的形式
提供,用于创建和控制各种游戏元素,如游戏画布、精灵、层等等(后文将介绍)。这样,MIDP
2.0大大减少了游戏开发者的创作时间。
进行游戏开发必需的另外两个MIDP 2.0 API包,在本文中也作了探索,它们是
和。
API包是开发各种类型的移动应用程序的基础。它包含
类,它是所有的基于J2ME的移动应用软件(或称为midlet)的
基类,它必须由所有移动应用程序的main类加以扩展后使用。非常类似于
类,MIDlet类提供创建midlet程序的必要的资源。
API包是开发各种类型的移动应用程序的用户接口所必需的。这个
API提供类来创建和控制UI部件(例如屏幕,表单,文本框,单选按钮,等等)并且处理包括游戏
在内的移动应用程序的输入。有使用AWT和SWING GUI开发经验的开发者会发现
包中的元素非常相似于这些API中的元素。
发布评论