塔防类游戏性能优化分享

背景:

最近因为新冠肺炎的关系,公司做了很多预期相关的内容。其实一个就是塔防游戏,大概就是在固定的路线上建立炮台以抵挡病毒,防止一个个病毒进入体内的。

那做就好了,为什么还要有优化这么一说呢?要求只是在一些高端的PC机上运行正常即可,而且时间要求非常紧。一个人完成,包括策划、美术、程序、数值等工作,只有两天。

于是我对着我的机械键盘狂敲击打了两天以后,完成了。
然后接到一个需要,需要在安卓平台上也可以运行…
然后对以下方面分别做了优化。
在这里插入图片描述

资源方面:
1.病毒模型进行坐原本的高模换成低模,本来就很小基本不影响。
2.三维模型场景换成平面,没办法千万面的场景。
3.三维的细菌运行路径通道和人体进行减面,并设置为静态物体。
4.将乱七八糟的图片尽量处理到2的倍数大小。
5.调整随意摆放的特效,调节特效发射数量。
6.有此特效用的图也很大需要注意。
7.有些图片勾选了读写功能,要注意调整。
8.统一部分字体,尽量使用一两个字体,部分字体只导入字母或数字包。
9.设置图片packing打包图集,以减少dragcall。

"代码方面"
1.对怪物和子弹建立对象池,不够用了再新加。
2.对Update中的频繁使用的变量写到Update以外来以对同一片内存反复利用。
3.用到的foreach是否可以换成for。
4.为保持速度稳定,设置目标帧率为固定值60。
5.将用本使用Animation控制病毒行动路径改为用帧移动,因为用Animation的怪物位置获取会不正确。
6.将原来使用Atan2计算的炮台角度的算法,改成transform.forward指向。
7.将发射子弹和爆炸等高频音效限定间隔播放。
8.每波结束以后调用一次GC清理部分内存。

最终在安卓平台上得以正常运行。
不知道对大家能否有帮助,也希望知道一些更进一步优化的知识。

猜你喜欢

转载自blog.csdn.net/ww1351646544/article/details/104931465