【手机游戏开发优化篇】详解手游[体积]及[运行内存]的优化篇!

时间:2022-11-24 13:59:26

本站文章均为​​李华明Himi​​​原创,转载务必在明显处注明:(作者新浪微博:​​@李华明Himi​​​) 


                  width="150" height="210" frameborder="0" scrolling="no" src="http://widget.weibo.com/relationship/bulkfollow.php?language=zh_cn&uids=1916000601&wide=1&color=FFFFFF,FFFFFF,0082CB,666666&showtitle=0&showinfo=1&sense=0&verified=1&count=1&refer=http%3A%2F%2Fwww.himigame.com%2Fandroid-game%2F1521.html&dpc=1" style="border-width: 0px; margin: 0px; padding: 0px; font-family: arial, helvetica, clean, sans-serif; font-size: 12px; line-height: 16px;">



新年刚过,由于近来没有写新教程,感觉有点对不住大家,所以今天给大家来一篇超实用文章!也算补过新年小礼物给大家吧。

——————————————-Himi   简易分割线——————————————-

程序包的【体积】优化方法:

首先 你需要很清楚当前自己项目什么地方占的体积最多,例如动画序列多少MB、地图占多少MB等等,都要提前做一个Check! 别总是认为哪里哪里可能占的多,要详细的知道才行!

1. 采用工具对资源进行[打包],例如TexturePacker  等工具。

2. 采用png压缩工具等,在打包图片前对每张图片进行[压缩]!

如果以上两点都做了还是体积过大,那么继续采取如下办法:

3.   [降低图片质量],比如你项目使用的图片是24bit,那么你可以采用低一些的,例如8bit的图片质量类似。 (ps.别说这样会让图片失真,先试试降低到什么程度的bit最合适再说)

4. 使用特定的压缩格式的图片,例如[wdp] 等等

5. 如果项目中帧序列动画占的比较多,那么可以采取[降帧]的方式来优化。

6. [缩放] 图片!举例,假设你项目用了10张500*500规格的图片,那么你可以让美术把这种图片缩放70%~80%,然后用这种缩放过的图片进行程序放大。(这种方式的图片质量是否会看起来失真,完全取决于缩小的倍数决定,可以适当调整缩放倍数,但是此方法绝对可行!)

7.如果以上方式都优化过,那么可以采取 [换思路]方式,假设你的地图是一张500*500的大图作为背景地图,那么你要考虑是否可以采用地图编辑器来进行拼接的方式来进行!

8. 采用[编辑器],可以利用地图编辑器、动作编辑器、骨骼编辑器等从而减少资源的使用从而达到减少体积,降低内存的使用。

9. 如果以上方式还都无法让你的项目包体积降低,那么你只能采用[在线更新下载]了,将程序包分为两部分,一部分是启动游戏所需的必要资源,另外一部分是游戏启动非涉及到的资源,将启动不会使用的资源放在服务器端,通过在线更新方式,从服务器将其他资源下载到客户端即可。

10. 再如果以上方式都采用后还是体积偏大,宝贝,你只能来个[阉割版]了,常命名为[xxx Lite]

——————————————-Himi   简易分割线——————————————-

   程序【运行内存】的体积优化方法:

其实降低程序包体积的方法很多都同时降低了程序的运行内存,例如:

1.  [降低图片质量]、[调整图片规格]、采用编辑器]、[缩放图片] 等等。

      其他方法:

2. [检查代码逻辑 ,主要看资源加载相关的部分代码]

3.[ 检查释放逻辑代码]

其实对于内存的优化,主要还是看项目的类型和复杂度的,具体问题具体考虑吧~

好了,本篇就简单介绍到这里啦~    希望对各位童鞋有所帮助~新的一年,祝愿大家步步高升、各种升职加薪!!!