单机游戏卡顿原因及解决办法

单机游戏卡顿原因及解决办法

题目描述:

有一个游戏叫做Flappy Bird,就是一只小鸟在飞,前面是无尽的沙漠,上下不断有钢管生成,你要躲避钢管。然后小明在玩这个游戏时候老是卡顿甚至崩溃,说出原因(3-5 个)以及解决办法(3-5 个)

  • 原因

(1)内存溢出问题。

(2)资源过大问题。

(3)资源加载问题。

(4)canvas 绘制频率问题

  • 解决办法

(1)针对内存溢出问题,我们应该在钢管离开可视区域后,销毁钢管,让垃圾收集器回收钢管,因为不断生成的钢管不及时清理容易导致内存溢出游戏崩溃

(2)针对资源过大问题,我们应该选择图片文件大小更小的图片格式,比如使用webp、png格式的图片,因为绘制图片需要较大计算量

(3)针对资源加载问题,我们应该在可视区域之前就预加载好资源,如果在可视区域生成钢管的话,用户的体验就认为钢管是卡顿后才生成的,不流畅。

(4)针对canvas 绘制频率问题,我们应该需要知道大部分显示器刷新频率为60 次/s,因此游戏的每一帧绘制间隔时间需要小于1000/60=16.7ms,才能让用户觉得不卡顿

(注意因为这是单机游戏,所以回答与网络无关)

JavaScript 文章被收录于专栏

前端技术分享

全部评论

相关推荐

评论
1
收藏
分享
牛客网
牛客企业服务