问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于游戏移植的问题!求教!求高手!

发布网友 发布时间:2022-10-13 10:15

我来回答

3个回答

热心网友 时间:2023-11-03 00:32

如果是手机的话就这样
手机游戏移植主要的工作是把原来的一款别的型号手机上的游戏。经过修改能在当前型号的手机上运行和使用的过程。所以可以把这个工作细分为几方面的事情:

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数组。或是做成图片占内存更少一些。

热心网友 时间:2023-11-03 00:33

首先你要找到该游戏的存档位置。一般来说,如果不在游戏的安装目录里,那就是在我的文档里。找到后复制到另外一台电脑对应的存档位置就行了。

热心网友 时间:2023-11-03 00:33

楼下说的对,楼下说的有道理,为何不直接玩战地3战地4.搞什么移植,换汤不换药
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
求大学生谈恋爱的各种弊端 大学生恋爱的利大于弊吗? 大学生谈恋爱的弊处 dnf现在站街16000的物攻 增加100物攻能张多少 家里养的蚕宝宝是要蜕皮了吗 富贵包硬和软的区别 【已完成】为什么腋窝突然有异味? 女生为什么有狐臭症状? 为什么会狐臭 万视宝这个牌子是做什么的?有人了解嘛? windows7旗舰版的单机游戏存档在哪个文件夹 战地风云4 指挥官辅助应用备份存档方法 死亡游戏之逆转人生的职员表 红粳米饭做法图解 米饭粗细搭配吃着更减脂更健康 胸怀博大和隐隐约约的近义词是什么 小米手机数据传到苹果手机上怎么导? 炝拌苦菊,最简单的做法健康又营养,鲜嫩入味超好吃 苦菊的做法,炝拌苦菊怎么做好吃,炝拌苦菊的家常做法 红米3s手机锁了怎么办 初三《庄子》的中学生读后感 从世界公园到石景山游乐园坐什么车? 从白家疃东口去北京游乐园坐什么公交车 哈尔滨游乐园附近有那哪些公交车? 宜春北湖公园游乐园的交通指南 请问朋友:从北京丰台区木樨园到世界公园和北京游乐园各坐哪路公交车?近期去这两个地方玩有 泉州东湖公园到游乐园怎么走? 【理财小课堂1】关于复利的两个故事 beautycam拍照差距大吗 手表系带怎么拆 成都10号线为什么有两个运营线路 宾得K100Dsuper单反配什么镜头好? ★想买宾得K100D super,不知配什么镜头好? 宾得K100Dsuper的测光,如何使用才能达到最佳效果? 宾得K100D可以刷机变成K100D super吗 我的单反相机宾得k100dsuper电池总不抗用,四节南孚没照到50张就没电了,请问有什么解决办法?? 宾得k100d super 单反~我在取景器看到的东西是斜的~相片着照出来也是斜~为什么?坏了吗? 宾得k100D和宾得k100Ds有什么区别 小孩牙龈出血的原因有哪些 gta5假钞行怎么买 工商注册:公司核名需要注意什么问题?工商核名资料需要哪些资料 梦见自己家里房子倒塌是什么意思 梦见自己住的房屋倒塌自己家房子倒塌是什么意思 中央空调室外机安好能马上开机吗?对主机有什么影响? 一个动漫图片 里面有个粉红色头发的女孩子,在下雪中手里握着一杯饮料,跪求啊 求一张动漫古风的图 男子的头发是银色长发 女子的头发有点偏紫红色,好像有头饰 应该是在下雪 矿山覆盖网的原因 华信航空股份有限公司的服务 华信保险经纪有限公司的服务流程 深圳市华信保险咨询服务有限公司怎么样? 急求智能化、照明、消防的竣工资料验收记录清单或是目录。