当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

<b>办理在J2ME平台上的手机游戏移植的问题</b>[Java编程]

赞助商链接



  本文“<b>办理在J2ME平台上的手机游戏移植的问题</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

手机游戏移植主要的工作是把本来的一款别的型号手机上的游戏.经过改正能在当前型号的手机上运行和利用的历程.所以可以把这个工作细分为几方面的事情:

1、处理屏幕尺寸

这也是最重要的一点.差别型号的手机.屏幕大小差别.辨别率差别.所以要保证每款游戏放在每种型号的手机上都能到达一样的运行效果.那的确是件艰难的事情.所以移植的时刻就尽大概找差别较小的机型做移植.程序中需求注意的就是双缓冲的尺寸.和画面内容的位置.当然最乐意看到的就是能有个全局变量来掌握整个游戏场景.

2、改正按键值

这是另一个重要的方面.确保游戏可以正常的操作的前提条件.比方NOKIA的机型的左右软键辨别是-6,-7,而Motorola的C650的左右软键就是-21,-22.所以这种差别是无法躲避的.除非你的手机游戏程序可以适应差别的机型产生差别的键值.我上个月做的一款游戏就是这样的.并且适应差别的屏幕大小.的确很不错程序.

3、处理内存占用

这是另一个无法躲避的问题.假如你的手机性能不错.那大概你不用考虑.比方你做motorola E680的游戏.但是大都机型的内存容量是你需求重点考虑到的.我见过很多游戏移植到新机型时呈现很多难以注释的问题.普通都是由内存不够惹起的.比方图片无法显示.游戏无法安装.死机等现象.所以我们移植的历程中.就要事前计算好你的内存占用情形.把无用的对象设置为NULL.

4、完好汉化

某些游戏是英文界面的.所以假如要符合中国 移动的标准来做.还必须保证没有一个英文字符呈现.不过这听起来也有点强人所难.比方游戏中的LAP 1/3 赛道的第几圈.你非要改成 圈 1/3 .但是也没办法.符合标准是你提交游戏的前提保证.汉化中大概呈现的问题就是.假如文字被做成图片了,你需求通过美工的帮忙来完成工作.

5、游戏的功效改正

很多时刻假如你要保持与中国 移动的标准相同.就要改正左右功效键的位置.以及还要触及到给游戏增添暂停和持续的功效.乃至有时刻你需求自己写个游戏菜单.并且增添一些LOGO界面.

上面提到的方面.大都都是移植中必须处理的工作内容.假如你碰到了难以让你下手的游戏.不要焦急.因为代码不是你写的.假如你看着头晕,可以先从简单的动手.然后理清思绪.下面谈谈移植历程中普通的步骤.

1、查看资源文件

这是最重要的.是你改正游戏的前提条件.假如你连资源文件都不清楚是什么,那你无法完成剩下的工作.资源文件有几种.比方纯真的图片.PNG格局(日本DOJA的游戏图片格局是GIF)、声音文件、文本文件、数据文件等等.这里要提一下数据文件.普通把除了图片,声音,文本以外的格局的文件都叫数据文件.不过这类文件是我不但愿看到的.因为它不便于与改正.有些游戏为了读取资源的便利.和占用空间的考虑.会把图片文件做成一个数据文件来处理.从前都是用Ultraedit把这个数据文件翻开.然后一段一段的通过提取PNG格局的数据.然后重新保存成PNG文件.很麻烦.后来写了两个工具.一个程序用来提取图片.一个程序用来重新生成数据文件.感受便利了很多.

2、阅读代码的本领

代码是必须得读的.不然就不叫改正了.但是也不用你都读懂,读透.并且不用每句都看全了,假如上万行的代码.你把每句看一遍.也够你累的.并且在BOSS规定的时间内完成不了.你也麻烦.我普通首先要看实现游戏主要场景和功效的类.也就是所谓的Canvas类.因为这个类必定不是自己启动的.要通过MIDlet主类加载.大概再委婉一些通过别的的类加载.所以其他的类都是帮助这个类来完成游戏功效的.然后看看这个类的导入了哪些包.担当自什么类.实现了什么接口.然后再看它的构造函数.以及paint()办法.假若有线程的话,还要看看run()里面的代码.这些就是这个游戏的主要切入点.掌握着游戏的进程和画图.其他的像游戏中的算法之类的东东.假若有时间.你就好好研究一下.这对你来说是很有意义的.

3、不要相信模拟器

做差别牌子手机,差别型号的手机游戏,必定会用到模拟器来运行.看看效果.用看看效果这个词已经很贴切了.因为有些游戏模拟器都运行不了.你连效果都看不到的.所以必必要用真实的手机运行和测试.但是按键值也必须用真机测出来.固然大都模拟器和对应的真机相同.

4、办理差别手机的BUG

最头疼的事情也就是这个了.会呈现一些莫名其妙的错误.明显在这个手机上运行的很好.但是到别的一个手机上就呈现意想不到的错误.比方无法安装.图片无法显示.玩到某个地方死机.声音无法播放等等.碰到问题先不要焦急.冷静的回想一下代码和上一次改正的历程.假如都解除人为缘由.那就从内存 和图片 来考虑.有些时刻 repaint() 和ServiceRepaints() 也会呈现问题.比方NOKIA 新 S60系统.并且考虑问题不要太单方面.因为游戏本身就是一个环环相扣的历程.

别的还要说说手机内存的处理.这是个经典的话题.什么String的利用,System.gc()之类的.以及将无用的对象设置为NULL.这些网上都有相关的谈论.以及static的用法.提一个地方.就是在手机加载图片时.手机中计算图片占用的内存是:图片长×图片宽×图片颜色数×2.乃至一幅透明的图片和一幅单色的一样尺寸的图片占用的内存都是很接近的.别的要罕用Graphics.drawString() .有空可以自己写程序测试一下.假如你写了一篇文字.用了N个这个语句.那就应当看看.能否需求替换成一个String数组.或是做成图片占内存更少一些.


  以上是“<b>办理在J2ME平台上的手机游戏移植的问题</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .