我用Cocos Creator 做一个跑酷类型的微信小游戏,在部分手机上有些卡顿。在已测试的机型中,iPhoneX运行比较流畅,iPhone7和红米手机都有些许卡顿。
为了测试是什么问题导致卡顿,我将游戏中的物体都去除了,只剩下角色,障碍物和摄像头,并且做了以下优化:
1 障碍物只创建了3个,需要的时候加入场景,不需要的时候移出场景。
2 场景的移动由摄像头跟随角色移动,而不是移动场景位置。
但卡顿问题还是没法解决,请问一下,我还能在什么地方做优化?
我用Cocos Creator 做一个跑酷类型的微信小游戏,在部分手机上有些卡顿。在已测试的机型中,iPhoneX运行比较流畅,iPhone7和红米手机都有些许卡顿。
为了测试是什么问题导致卡顿,我将游戏中的物体都去除了,只剩下角色,障碍物和摄像头,并且做了以下优化:
1 障碍物只创建了3个,需要的时候加入场景,不需要的时候移出场景。
2 场景的移动由摄像头跟随角色移动,而不是移动场景位置。
但卡顿问题还是没法解决,请问一下,我还能在什么地方做优化?
障碍物使用对象池。另外你的卡顿是由什么引起的有去查一下么?先找到问题点,才好针对问题进行优化。否则大家只能给你尝试的方向,并不一定能解决问题
在iphone7,iphone6上,使用最新版本的微信,都会有楼主说的这个问题
FPS会自动在60和30之间无故不断的切换
不过,使用5,6年前的红米note1代,然后使用老版本的微信,运行一点都不卡顿
另外,游戏的Drawcall也很少,只有15左右。FPS也正常,保持在60左右。
游戏分辨率是1920x1080,分辨率太大是否也会影响?
看一下是否有计算量很大的逻辑?特别是一个for循环里进行了很多的数学运算
有可能是你在某一个地方打印了一个节点 可能会比较卡顿
我也遇到这样的问题,不知你是否有解决方案。
测试正常:
iPhone7Plus, ios12.1.2,稳定60
iPhone6,ios 12.1.2,45~60
安卓8.0,麒麟955,稳定60
测试异常:
iPhone7Plus,ios12.1.4,60和30间歇性跳动
我也做了跑酷类游戏,但是得解决方案是有两个方向,一个drawcall优化,另一个是对象池方面的,(1)自己实现对象池回收(因为一些原因自己写的对象池),(2)生成方面的自己实现协程(类似与Unity的协程)
然后就解决了卡顿的问题
我也是类似于跑酷类型的游戏,摄像机移动,其他机型很流畅,锤子都60fps,唯独iPhone6Plus卡顿,帧率只在30 60两个数字跳动,DC在10以下,使用了对象池