Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.1k views
in Technique[技术] by (71.8m points)

canvas中requestAnimationFrame绘制红包雨的性能?

现在有两种方式,

  1. 每次创建一个红包时,都自带一个requestAnimationFrame来绘制它自己的新位置;canvas中可能同时会存在7、8个红包;
  2. 主方法控制一个requestAnimation,每次把存在的红包都循环绘制一次;

想请问下,这两种方式的性能上有区别吗?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

两种方式 每个红包在 requestAnimation 的时候都会绘制一遍,这个部分没有差异

方法一 每个红包 都有一次 requestAnimation 调用开销
方法二 所有红包 只有一次 requestAnimation 调用开销

实际上你也就 7,8个红包。。。这点调用开销是感受不出来的

关于 requestAnimation 的推荐做法是,只有一个。。。并且都在这个一个里做绘制(就是方法二)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

57.0k users

...