如何在WebGL中实现每秒帧数

How to achieve frames per second in WebGL?

本文关键字:实现 WebGL      更新时间:2023-09-26

>假设我正在使用WebGL在画布上绘制一些东西window.requestAnimFrame(somemethod);

如何获取每秒帧数?

例如,打开此链接,该链接在左上角显示每秒帧数。

如何使用普通的JavaScript实现类似的东西?请不要使用API。

setInterval

准确,如果一个人正在做繁重的工作,它可能会延迟和/或堆叠,只需使用传递给请求动画帧回调的时间戳即可。

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

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

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