Каков наиболее точный способ измерения частоты кадров, т. Е. FPS, в современных браузерах HTML5? Меня особенно интересует FPS для анимации холста.
http://weblogs.mozillazine.org/roc/archives/2010/11/measuring_fps.html скажет вам, что попытка измерить частоту кадров путем подсчета частоты, с которой работает setTimeout, не точна. Браузер может запускать обратный вызов Timeout несколько раз между рисованиями экрана.
Оказывается, в Mozilla есть window.mozPaintCount https://developer.mozilla.org/en/DOM/window.mozPaintCount, который должен обеспечивать точный FPS. Однако это работает только для Mozilla.
Существует открытая проблема для Chrome для чего-то подобного: http://code.google.com/p/chromium/issues/detail?id=65348
Ручной способ проверить аппаратное ускорение FPS в Chrome - захватить бета-канал Chrome (на дату публикации) и перейти к about: flags и включить FPS Counter. Однако на Mac ускорение включается только при использовании WebGL. Таким образом, невозможно проверить FPS для Canvas в Chrome для Mac.
Какие существуют другие стратегии для точного измерения FPS в HTML5?
Спасибо!