84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
canvas写了一个小游戏cpu好高,怎么办?有什么技巧优化?比如跟随鼠标旋转和键盘事件这一类的
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
如果不是因为操作而导致的CPU占用高,那肯定有奇葩的计算。。。慢慢想办法减少计算吧。鼠标旋转的时候,判断鼠标移动的距离,如果大于某个值再重绘。如果不是requestAnimationFrame,函数节流一定要有。否则你可以自行减少帧数,在执行每一帧前计数判断,把帧数降低一半。
更新:演示一下
var count=0 var frame=function(){ if(count++ % 2===0){ return } //some actions here } requestAnimationFrame(frame)
requestAnimationFrame?函数节流 & 去抖
别的好像也没什么,毕竟 canvas 都是需要每帧重绘 ... 消耗 CPU 在所难免 ...
如果不是因为操作而导致的CPU占用高,那肯定有奇葩的计算。。。慢慢想办法减少计算吧。
鼠标旋转的时候,判断鼠标移动的距离,如果大于某个值再重绘。
如果不是requestAnimationFrame,函数节流一定要有。否则你可以自行减少帧数,在执行每一帧前计数判断,把帧数降低一半。
更新:
演示一下
requestAnimationFrame?
函数节流 & 去抖
别的好像也没什么,毕竟 canvas 都是需要每帧重绘 ... 消耗 CPU 在所难免 ...