您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 总结/报告 > 游戏设计--6手机类游戏及开发环境
第六章手机类型游戏及开发环境6.1手持游戏系统的类型手持游戏系统是一种便于携带的游戏系统,基本可分为三种不同的类型。专用掌上游戏系统PDA上的游戏系统手机上的游戏系统专用掌上游戏系统类似于GB,PS,PSP这类的设备,它们的硬件与操作系统均由自身同一个生产厂商提供,技术支持也由该厂商提供。PDA上的游戏系统操作系统包括:pocketPC(WindowsCE):微软的PocketPC系统是比较流行的PDA操作系统,因此高端的智能电话很多采用这种系统。palmOS:Palm的这种操作系统也是比较流行的PDA操作系统,用于很多智能手机中。手机上的游戏系统一个广阔的游戏开发领域出现在无线设备和移动电话上,即手机游戏。手机的由来:1973年4月,手机注册专利,1985年才有真正意义的移动电话(当时约3公斤,用肩扛)。随着技术的发展,手机和PDA逐渐结合在一起,形成了种种智能手机系统。手机不再是在简单的通信硬件系统上进行开发,而是包括处理器、操作系统、应用系统等复杂结构。手机上的游戏6.2.手机游戏开发中要注意的问题短的游戏时间:一般三五分钟内就可结束一个回合,并应允许玩家中断、保存和继续玩下去。玩家有自己的时间表,而不必遵循你的时间表,不要强迫玩家出不来,要有中断方式,等待时间要短。避免等待时间,这对单人游戏很容易,在多人游戏中就需要解决等待问题。使用网络:手机是一种社会性设备,添加某种社会性因素到游戏中会增加受欢迎程度。尽可能的让游戏保持小型(连图、代码一共小于几十K)操作简单和趣味性强(趣味性是游戏的根本)。做好支持多种手机的准备:至少需要支持不同的屏幕尺寸,要为不具备相同特性的手机开发不同的版本(从设计开始时就要想到,并不是单为某一型手机开发的)。过于丰富的颜色和声音:要看能不能正常运行,通常手机中只有一个语言或声道可用。应用程序过大:大部分Java手机只有很少内存用于MIDLET。为国际化做好准备:每一种语言都有自己的市场,在开发时就要做好计划,开发多种语言版本。手机游戏适合类型低激烈程度游戏简单的街机风格游戏(低速移动、简单挑战、失去东西等。例:格斗、功夫、俄罗斯方块)运动类场景游戏(全景,有些物体比例需要变通)简单的运动类游戏(例:保龄球)解谜游戏(例:皮皮猪剪刀石头布)主题测验游戏(问题和答案都很短的,例如,超级搬运工)国内手机游戏的优势平台开发,没有专用技术门槛网络运营商可以进行软件市场推广版权问题较单机游戏少6.3手持设备开发环境手持设备开发的3种环境:1、直接嵌入式开发2、专用开发环境3、通用开发环境J2ME1、直接进行嵌入式开发嵌入式开发的一般方式是在PC上编写程序,通过PC上的手持设备模拟器(一般厂家在提供工具时会附带这个软件)进行前期开发,在完成基本的测试以后,利用厂家提供的交叉编译工具在PC上将代码编译成可在手持设备上运行的二进制代码后,通过某种机制下载到手持设备上,再进行真实环境的测试,之后才能提供给用户。技术要求:一般使用C/C++技术瓶颈:C/C++本身函数库的不足手持设备系统的系统调用手持设备间的移植2、专用开发环境(Brew)BREW,无线二进制运行环境,是高通公司2001年1月31日推出的一种用于其本身开发的CDMA系统应用环境,为无线设备提供了一个开放式标准平台。Brew的体系结构BREW的API(应用程序接口)和SDK(软件开发工具)极大地简化了用C、C++和其它语言开发无线应用。BREW的API以一组接口类的方式组织起来,每个类定义提供某一特定服务的一组函数,使开发商无需了解设备的内部机理也能从事无线应用的开发。Brew的优势:稳定安全Brew的问题:需要昂贵的专利费设备类型CPU主频操作系统软件扩充能力PocketPC200-500MHZWindowsCE通用存储卡Palm113-400MHZPalmOS通用存储卡Nokia100-300MHzSymbian通用存储卡PSP333MHz专有系统专用格式光盘GBA16.7MHz专有系统专用游戏卡手机游戏的开发往往基于专用的系统平台,很多移动电话的操作系统是专门为自己的硬件平台专门定制开发的,当然也并不完全是从头来过,通常都是通过对专用的嵌入式系统VxWorks,HopeOS等进行定制得到的。毕竟目前对手机系统功能的要求比较复杂,不像原来的只有简单通话功能的手机。这种专门定制的手机,一般进行游戏开发比较困难,因为很多技术细节都是不公开的,或者是很少测试。各种便携终端的硬件规格以及软件系统比较3、通用开发环境J2ME根据Sun的定义:J2ME是一种高度优化的Java运行环境,主要针对消费类电子设备的,例如蜂窝电话和可视电话、数字机顶盒、汽车导航系统等等。跨平台机制描述:通用的开发环境,在不同的操作系统以及硬件平台上构架了一个抽象层。跨平台能力:针对小型设备,跨平台能力。6.4Java应用领域J2EE:Java2企业版,主要是企业的应用,如:e-Business、WebServices服务等J2SE:Java2标准版,Java的主要核心J2ME:Java2微型版,主要是应用于手机、PDA等JavaCard:在SmartCard上运行的JavaJ2EEJ2SEJ2MEJavaCardJ2ME的应用范围6.5J2ME体系结构J2ME语言体系与传统的编程语言有一些不同,主要是由简表(Profile)、配置(Configuration)和可选包(OptionalPackage)三要素构成。J2ME技术架构由一个虚拟机和一组API组成,形成一种层结构。这组API适合于为消费和嵌入式电子设备提供经过剪裁的运行环境。ProfileconfigurationVirtualMachineJ2ME主要有两种组件:配置(Configuration)简表(Profile)配置层(ConfigurationLayer)配置层定义了捆绑在Java虚拟机(VirtualMachine)功能上的,特定类别设备可用的Java类库的最小集。即把运算功能有限、电力有限的嵌入式装置定义在ConnectedLimitedDeviceConfiguration(CLDC)之中;而另外一种装置则规范为ConnectedDeviceConfiguration(CDC)规格。CLDC和CDC的开发类都使用了一部分J2SE的开发类,并把这些J2SE的类进行了优化,同时还添加了一部分针对移动设备而开发的类,而CLDC则完全是在CDC开发类的基础上进行优化的,没有添加自身需要的类。J2SECDCCLDCProfileconfigurationVirtualMachineCLDC与CDC的对比CDC主要针对32位或64位的处理器,主频通常在75MHz以上,内存可能在1~4MB。CDC针对的设备主要是数字电视、机顶盒、网络电话、车载计算设备等。这些设备的特点是:有线连接电源稳定设备外设资源比较受限CLDC设备的最低配置为:CPU为16位或32位,处理器主频在16MHz以上,设备的内存比较少,可能只有512KB,甚至更少。现在硬件的发展非常快,目前的CLDC设备已远远超过原来的定义。不过要分辨CLDC设备主要要从设备特点上进行区别。这些设备的特点是:无线连接没有稳定的电源供应(通常使用电池)设备外设资源极少Java虚拟机层(JavaVirtualMachineLayer)这一层是Java虚拟机的一个实现,它是为特定设备的主机操作系统定制的,而且支持一个特定的J2ME配置(configuration)。CLDC使用的Java虚拟机称为KVM,是一个专门为小型、资源受限制设备设计的紧凑、便携的虚拟机,通常只有128K或更少。CDC所使用的则称为CVM。简表层(ProfileLayer)J2ME在Configuration的基础上又定义了Profile的概念,Profile是针对某一类特定设备所制定的规范和API,即特定系列设备上可用的应用程序编程接口API的最小集。例如针对移动电话的应用,J2ME定义了一个专门的Profile:MIDP(MobileInformationDeviceProfile)。应用程序是针对特定的Profile编写的。在虚拟机之上只有一个configuration,而在configuration之上可以同时存在数个Profile,如此才能有效地针对各种不同设备构造一个完善的运行环境。ProfileMIDPMIDP规范所规定的特定功能部分包括API和硬件两部分。API部分用户界面支持:提供的类程序包是javax.microedition.lcdui网络支持:提供的类程序包是javax.microedition.io数据持续存储支持:提供的类程序包是javax.microedition.rmsi其他例外处理及Timer等类的支持硬件部分(MIDP1.0)内存:128KB的稳定内存供MIDP组件使用;8KB的稳定内存供数据持续存储使用;32KB的稳定内存供虚拟机运行使用。显示器:屏幕大小为95x54像素,1位色深,屏幕高宽比大约1:1。输入设备:键盘、触摸式屏幕或二者并存。网络:提供在优先带宽的情况下,进行双向、无线,但可能是间歇性连通的通信功能。6.6J2ME应用开发流程手机端的编程其实是MIDlet编程。MIDlet是J2ME的Java类,它扩展了Javax.microedition.midle.MIDlet抽象类。实现startApp()、pauseApp()和destroyApp()函数,这些函数类似于J2SE的java.applet.Applet类中的start()、stop()和destroy()函数。MIDlet类似于C语言中的main函数,属于手机程序的主程序。除了主MIDlet类外,一个MIDP应用程序通常还包括其他一些类,这些类能够随它们的资源一起被打包成为jar文件,所以称为MIDlet套件。一个MIDlet套件中的不同MIDlet程序能共享jar文件的资源,比如一个数据库以及图片等。MIDlet在应用程序生命周期中有3种可能存在的状态:运行状态:MIDlet程序在运行中。暂停状态:应用程序处于暂停中,MIDlet持有的所有资源暂时被释放,但随时可能被运行。销毁状态:MIDlet关闭程序并释放占用的所有资源,等待废物清理程序的处理。destroyApp()destroyApp()pauseApp()startApp()DestroyedActivePausedMIDlet生命周期J2ME开发流程小结:手持游戏系统的类型专用掌上游戏系PDA上的游戏系统手机上的游戏手机游戏开发中要注意的问题手持设备开发环境直接嵌入式开发专用开发环境通用开发环境J2MEJava应用领域J2ME体系结构配置(Configuration)简表(Profile)MIDP规范J2ME应用开发流程MIDlet生命周期
本文标题:游戏设计--6手机类游戏及开发环境
链接地址:https://www.777doc.com/doc-3370607 .html