首页 > 代码库 > 关于Cocos2d-x中掉帧导致游戏一卡一卡的网上一些的解决方法
关于Cocos2d-x中掉帧导致游戏一卡一卡的网上一些的解决方法
方法1
掉帧主要是setpostion引起的
因为每一帧每一个精灵都要set一次
虽然不知道为什么会这样
但是
if(poX<1000&&pox>-100){
xx->setpostion(poX);
}
加了个这样的条件减少set的次数就不卡了
(就是每次都调整Size[]保存的坐标,但只set符合要求的)
ps:测试过 总共有420+精灵
限制后大概只有10%的精灵每一帧要set;
但是我感觉 420+的精灵应该不至于让程序掉帧那么严重啊
方法2
要做递归动画最好是用CCMoveBy这个 可能比较好些 setpositon的话 是重新定位可能会导致 sprite的 位置变动卡
方法3
也许是创建太多精灵或者加载太多图片,显示之后隐藏,没释放
方法4
update有个参数delta,
计算运动距离的时候考虑这个delta值(也就是时间差量)
通常都是 移动速度(像素/秒)×(delta)
理论上这样不会有问题,我都是这么处理的
方法5
你确定你的update是每一帧调用的不是你自定义时间的?
原来还可以自定义update调用间隔
方法6
写到定时器里而不是update里试试
方法7
update函数有个参数 fDelta
如果你想设置每秒横移X个像素 正确的写法应该是
sprite->setPositionX(X * fDelta);
关于Cocos2d-x中掉帧导致游戏一卡一卡的网上一些的解决方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。