JavaScript,requestAnimationFrame:
您知道不同情况下的帧速率是如何不同的(例如,不同的浏览器)
如何在特定情况下找出帧率?
谢谢
答案 0 :(得分:2)
这是一个函数,可以为任何支持它的设备查找依赖requestAnimationFrame()
的帧速率。唯一的缺点是精度不是瞬时的。您可以轻松地舍入到最接近的标准帧速率并获得非常快速的返回值,但此代码计算平均超过60帧以获得更准确的requestAnimationFrame()
读数。
function RAF_tester() {
var i = 1;
var prevT;
requestAnimationFrame(function(startT) {
requestAnimationFrame(function RAF_loop(currentT) {
var elapsedT = currentT - startT;
var RAF_interval = currentT - prevT;
var RAF_average = 1000 / (elapsedT / i);
console.log(RAF_interval);
diagnostic.innerHTML = 'Average FPS: '+RAF_average;
prevT = currentT;
i += 1; if (i<61) { requestAnimationFrame(RAF_loop); }
});
});
}
希望它适合你!
在codepen上试用:http://codepen.io/kandleflame/pen/QEgQoE