canvas写了一个小游戏cpu好高,怎么办?有什么技巧优化?比如跟随鼠标旋转和键盘事件这一类的

canvas写了一个小游戏cpu好高,怎么办?有什么技巧优化?比如跟随鼠标旋转和键盘事件这一类的

阅读 4.4k
2 个回答

如果不是因为操作而导致的CPU占用高,那肯定有奇葩的计算。。。慢慢想办法减少计算吧。
鼠标旋转的时候,判断鼠标移动的距离,如果大于某个值再重绘。
如果不是requestAnimationFrame,函数节流一定要有。否则你可以自行减少帧数,在执行每一帧前计数判断,把帧数降低一半。

更新:
演示一下

var count=0

var frame=function(){
    if(count++ % 2===0){
        return
    }
    //some actions here
}

requestAnimationFrame(frame)

requestAnimationFrame?
函数节流 & 去抖

别的好像也没什么,毕竟 canvas 都是需要每帧重绘 ... 消耗 CPU 在所难免 ...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题