私は単純なフレーム/秒のアニメーション ベンチマーク Javascript ユーティリティを作成しようとしています。FPS はおそらくここでは用語として使われませんが、理想的には、さまざまなアニメーション (CSS3/canvas/webgl) がブラウザーとデバイス間でどのように実行されているかをより正確に比較および測定できるようにするものです。(特定のコードをテストするだけのものではなく、ページに含まれていて、それ自体で実行できるJSライブラリです)
そして、このテーマに最適にアプローチする方法についてのアイデアを探しています。
たとえば、私は requestAnimationFrame が探しているものであることを望んでいます-私はそれについて少し読んでいますが、ブラウザが何かを再描画/アニメーション化できるようになるたびに呼び出されるようです? したがって、(アニメーションを実行しているときに) ブラウザーが頻繁に使用できない場合 (たとえば、空の実行の場合と同じように)、同じロジックにより、すぐに再度比較できるいくつかの数値が既にあります。
もちろん、問題は requestAnimationFrame が私が望むほど広くサポートされていないことです(特にモバイルでは)。setInterval を何らかの方法で使用できますか? 信頼性が低いことは理解していますが、それを有利に使用できる可能性があります.
ここでの唯一の問題は、そのメソッドがアニメーションだけでなく、任意の数の問題の測定値を返すことです。たとえば、ブラウザが DOM で何かを行っているなどの理由で間隔をスキップしていると想像できます。は単一プロセスの動物なので、DOM の変更もアニメーションに影響しますが、たとえば CSS3 アニメーションが GPU ハードウェアでアクセラレートされている場合でも、それは当てはまりますか?
現時点では理論にすぎません - したがって、どんなアイデアでも大歓迎です! ;-)