threeJS帧率
- 一次获取
let fpsStop: any = null
const estimateScreenRefreshRate = () => {
const start = performance.now();
let lastFrameTime = start;
let frameCount = 0;
const measureFrameRate = () => {
const now = performance.now();
fpsStop = requestAnimationFrame(measureFrameRate);
if (now - lastFrameTime >= 1000) {
console.log(`Estimated frame rate: ${frameCount} fps`);
frameCount = 0;
lastFrameTime = now;
cancelAnimationFrame(fpsStop)
} else {
frameCount++;
}
}
measureFrameRate()
}
console.log(estimateScreenRefreshRate());
- 每秒一次即时帧率
const estimateScreenRefreshRate = () => {
const start = performance.now();
let lastFrameTime = start;
let frameCount = 0;
const measureFrameRate = () => {
const now = performance.now();
if (now - lastFrameTime >= 1000) {
console.log(`Estimated frame rate: ${frameCount} fps`);
frameCount = 0;
lastFrameTime = now;
} else {
frameCount++;
}
requestAnimationFrame(measureFrameRate);
}
requestAnimationFrame(measureFrameRate);
}
console.log(estimateScreenRefreshRate());