网站大量收购独家精品文档,联系QQ:2885784924

J2ME移动软件程序设计 卢军 第10章新.pptVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 J2ME游戏程序设计 知识点: 游戏开发概述 游戏编程基本技术 响应游戏中用户的按键 使用重复按键 实例 本章导读: 本章详细介绍如何在游戏程序中响应用户输入;如何模拟实现连续按键;如何实现精灵的加速移动和连续移动;如何实现丰富多彩的屏幕显示效果;如何在支持透明图像和不支持透明图像的KVM平台上实现精灵的绘制;以及讨论网络游戏的设计。 china_54@ china_54@ J2ME移动软件程序设计 J2ME移动软件程序设计 10.1.1 在移动电话上开发游戏的限制 10.1 游戏开发概述 不能使用透明图像。 不能抓取、拷贝和编辑屏幕上的图像。 没有填充多边形和填充三角形的方法。 不能将图像数据直接拷贝到屏幕上。 不支持浮点运算。 不能进行本地API调用。 J2ME移动软件程序设计 10.1.2 在移动电话上开发游戏的利端 很多移动电话生产厂家正在研制将KVM固化在芯片上来提高J2ME的运行速度和减少KVM占用的存储空间。 一些支持J2ME的移动电话生产厂商计划在他们的手机中添加支持游戏的附加API以增强游戏的功能。 Java语言提供了自动内存垃圾搜集、面向对象支持的特色,可以极大地提高程序开发效率。 J2ME移动软件程序设计 10.2.1 MIDlet的基本结构 10.2 游戏编程基本技术 游戏程序是从javax.microedition.midlet类派生出来的。 每个MIDlet包括三个必要的方法:startApp()、pauseApp()和destroyApp()方法。 游戏MIDlet中通常需要在屏幕上绘制图形,这就必须使用Display对象。 J2ME移动软件程序设计 10.2.2 使用Canvas对象绘制图形 在Canvas对象中,必须实现paint()方法。 在paint()方法中使用drawArc()、drawImage()、drawLine()、drawRect()、drawString()、fillRect()等方法,可以在屏幕上绘制出用户需要的图形。 J2ME移动软件程序设计 10.3.1 按键事件 10.3 响应游戏中用户的按键 在MIDP中,每一个按键事件将产生一个按键代码。 按键代码包括数字0~9、星号和井号。 KEY_NUM0、KEY_NUM1、KEY_NUM2、KEY_NUM3、KEY_NUM4、KEY_NUM5、KEY_NUM6、KEY_NUM7、KEY_NUM8、KEY_NUM9、KEY_STAR和KEY_POUND。 J2ME移动软件程序设计 10.3.2 游戏按键 在MIDP中定义的游戏按键:DOWN、UP、LEFT、RIGHT、FIRE、GAME_A、GAME_B、GAME_C和GAME_D。 上述游戏按键在不同的移动设备上是由不同的物理按键代表的。为了在程序中保证可移植性,就应该使用getGameAction()方法在物理按键和游戏按键之间转换。 J2ME移动软件程序设计 10.3.3 实例 响应键盘事件 实例,KeyEvent .java J2ME移动软件程序设计 10.4.1 简述 10.4 使用重复按键 重复按键功能实际上是当用户按下一个按键时就开始执行一个功能,直到用户释放按键为止。 当按键一直没有释放时,这个功能将一直将被反复地执行,按键重复的频率在不同的设备中是不同的。 在很多情况下程序中需要使用重复按键功能。如在射击类的游戏中,用户需要使用UP键移动游戏中的飞机向上飞行。 通过MIDP的编程来模拟重复按键功能。 J2ME移动软件程序设计 10.4.2 判断系统是否支持重复按键 测试设备是否支持重复按键功能可以使用hasRepeatEvents()方法。 protected void keyRepeated(int keyCode) { if (hasRepeatEvents()) { keyPressed(keyCode); } } J2ME移动软件程序设计 10.4.3 模拟重复按键 如果设备不支持重复按键功能,通过代码模拟重复按键。 (1)建立一个需要重复执行的任务。 (2)当按键被按下时,开始执行这一任务。 (3)以一定的频率反复执行这一任务。 (4)当按键释放时停止执行任务。 实现重复按键代码,HappyFace2.java 实现连续移动和加速移动代码,HappyFace3.java J2ME移动软件程序设计 10.5 在程序中实现屏幕滚动 用定时器实现重复按键 使用定时器实现屏幕滚动 滚动效果是通过将一副图片放置在Canvas的不同位置来实现。图片的位置可以通过在Timer类中定时地调用TimerTask的run()方法来改变。 实例,ImageS

文档评论(0)

精品课件 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档