1
0
mirror of https://github.com/tobspr/shapez.io.git synced 2024-10-27 20:34:29 +00:00
tobspr_shapez.io/src/js/game/hud/parts/debug_info.js

34 lines
1.3 KiB
JavaScript
Raw Normal View History

2020-05-18 10:53:01 +00:00
import { BaseHUDPart } from "../base_hud_part";
2020-05-18 15:40:20 +00:00
import { makeDiv, round3Digits, round2Digits } from "../../../core/utils";
import { Math_round } from "../../../core/builtins";
2020-05-18 10:53:01 +00:00
export class HUDDebugInfo extends BaseHUDPart {
createElements(parent) {
this.element = makeDiv(parent, "ingame_HUD_DebugInfo", []);
this.tickRateElement = makeDiv(this.element, null, ["tickRate"], "Ticks /s: 120");
2020-05-18 15:40:20 +00:00
this.fpsElement = makeDiv(this.element, null, ["fps"], "FPS: 60");
2020-05-18 10:53:01 +00:00
this.tickDurationElement = makeDiv(this.element, null, ["tickDuration"], "Update time: 0.5ms");
}
2020-05-18 15:40:20 +00:00
initialize() {
this.lastTick = 0;
}
2020-05-18 10:53:01 +00:00
update() {
2020-05-18 15:40:20 +00:00
const now = this.root.time.realtimeNow();
if (now - this.lastTick > 0.25) {
this.lastTick = now;
this.tickRateElement.innerText = "Tickrate: " + this.root.dynamicTickrate.currentTickRate;
this.fpsElement.innerText =
"FPS: " +
Math_round(this.root.dynamicTickrate.averageFps) +
" (" +
round2Digits(1000 / this.root.dynamicTickrate.averageFps) +
" ms)";
this.tickDurationElement.innerText =
"Tick Dur: " + round3Digits(this.root.dynamicTickrate.averageTickDuration) + "ms";
}
2020-05-18 10:53:01 +00:00
}
}