This commit is contained in:
33333-33333 2026-06-24 21:20:53 +09:00
commit 2741b93dea
31 changed files with 751 additions and 546 deletions

View file

@ -3,9 +3,6 @@ let last = nowSec();
let statsTimer = 0;
let fpsTimer = 0;
let fpsFrames = 0;
let perfResizeTimer = 0;
let lastPerfLevel = 0;
let lastPerfMaxDpr = 0;
window.__tarinaiFps = 0;
const LOADING_SPRITES = [
@ -85,26 +82,14 @@ function loop() {
fpsFrames += 1;
if (fpsTimer >= 0.5) {
window.__tarinaiFps = Math.round(fpsFrames / Math.max(fpsTimer, 0.001));
window.TarinaiPerformance?.updateFps?.(window.__tarinaiFps, world);
window.TarinaiPerformance?.updateFps?.(window.__tarinaiFps);
fpsTimer = 0;
fpsFrames = 0;
}
world.update(dt);
render();
statsTimer += dt;
const quality = world.performanceQuality?.() || {};
const perf = Number(quality.level ?? (world.performanceLevel ? world.performanceLevel() : 0)) || 0;
perfResizeTimer += rawDt;
if (perfResizeTimer > 1.5) {
const maxDpr = Number(quality.maxDpr || 0) || 0;
if (perf !== lastPerfLevel || Math.abs(maxDpr - lastPerfMaxDpr) > 0.08) {
lastPerfLevel = perf;
lastPerfMaxDpr = maxDpr;
resizeCanvas();
}
perfResizeTimer = 0;
}
const statsInterval = world.performanceQuality?.().statsInterval ?? (perf >= 3 ? 1.20 : perf === 2 ? 0.92 : perf === 1 ? 0.68 : 0.48);
const statsInterval = 2.5;
if (statsTimer > statsInterval) {
renderStats();
statsTimer = 0;