如何在 WebGL 中实现每秒帧数?

How to achieve frames per second in WebGL?

假设我在 window.requestAnimFrame(somemethod);

中使用 WebGL 向 canvas 绘制一些东西

如何获取每秒帧数?

例如,打开这个 Link,它在左上角显示每秒的帧数。

如何使用普通 JavaScript 实现类似的功能?没有 API 的请。

在某些方法中增加了全局变量 counter 然后将间隔添加到日志值

setInterval(function(){ console.log('fps:'+counter); counter=0; },1000);

setInterval 不准确,可能会延迟 and/or 工作量大的人堆叠,直接使用传递给请求动画帧回调的时间戳即可。

var prev = 0;
requestAnimationFrame(function (now) {
    var delta = now - prev;
    var fps = 1000 / delta;
    prev = now;
    // render logic
});