1

我正在寻找编写一个简单的每秒帧数动画基准 Javascript 实用程序。FPS 在这里可能是一个失败的术语,但理想情况下,它可以让我更准确地比较和测量不同动画(CSS3/canvas/webgl)在浏览器和设备之间的执行情况。(所以不是只测试特定代码的东西 - 而是一个包含在页面中并且能够自己完成它的事情的 JS 库)

我正在寻找有关如何最好地处理该主题的想法。

例如,我希望 requestAnimationFrame 是我正在寻找的 - 我已经阅读了一些关于它的内容,似乎每次浏览器可以重绘/动画时都会调用它,对吗?因此,如果(在运行动画时)浏览器不经常可用(例如在空白运行中),按照相同的逻辑 - 我们已经有一些数字可以在那里进行比较。

问题当然是 requestAnimationFrame 没有得到我想要的广泛支持(尤其是在移动设备上)。可以以某种方式在那里使用 setInterval 吗?我知道它不那么可靠,但也许这可以用于我的优势 - 例如,如果我每秒调用它 1000 次,然后将其与每秒实际执行的次数进行比较 - 这已经是一种基准。

这里唯一的问题是该方法会返回任何数量的问题的测量值,而不仅仅是动画 - 例如,我可以想象浏览器跳过一个间隔,因为它在 DOM 中做某事等等。你可能会争辩说浏览器是一种单进程动物,因此 DOM 更改也会影响动画 - 但如果 CSS3 动画是 GPU 硬件加速的,那仍然如此吗?

目前只是一个理论 - 所以任何想法都非常感谢!;-)

4

1 回答 1

0

这看起来应该很容易适应一组适用于您的特定情况的功能(“做自己的事情”):https ://gist.github.com/1156092

于 2012-10-22T22:36:35.860 回答