mirror of
https://github.com/openfrontio/OpenFrontIO.git
synced 2026-06-29 03:44:40 +00:00
Add performance metrics for worker and render ticks
- Introduced new metrics in ClientGameRunner to track worker simulation ticks and render tick calls per second. - Updated TickMetricsEvent to include these new metrics. - Enhanced PerformanceOverlay to display worker and render ticks per second, improving performance monitoring capabilities. - Adjusted minimum FPS in GameRenderer
This commit is contained in:
@@ -234,6 +234,8 @@ export class PerformanceOverlay extends LitElement implements Layer {
|
||||
event.tickDelay,
|
||||
event.backlogTurns,
|
||||
event.ticksPerRender,
|
||||
event.workerTicksPerSecond,
|
||||
event.renderTicksPerSecond,
|
||||
);
|
||||
});
|
||||
}
|
||||
@@ -429,11 +431,19 @@ export class PerformanceOverlay extends LitElement implements Layer {
|
||||
@state()
|
||||
private ticksPerRender: number = 0;
|
||||
|
||||
@state()
|
||||
private workerTicksPerSecond: number = 0;
|
||||
|
||||
@state()
|
||||
private renderTicksPerSecond: number = 0;
|
||||
|
||||
updateTickMetrics(
|
||||
tickExecutionDuration?: number,
|
||||
tickDelay?: number,
|
||||
backlogTurns?: number,
|
||||
ticksPerRender?: number,
|
||||
workerTicksPerSecond?: number,
|
||||
renderTicksPerSecond?: number,
|
||||
) {
|
||||
if (!this.isVisible || !this.userSettings.performanceOverlay()) return;
|
||||
|
||||
@@ -479,6 +489,14 @@ export class PerformanceOverlay extends LitElement implements Layer {
|
||||
this.ticksPerRender = ticksPerRender;
|
||||
}
|
||||
|
||||
if (workerTicksPerSecond !== undefined) {
|
||||
this.workerTicksPerSecond = workerTicksPerSecond;
|
||||
}
|
||||
|
||||
if (renderTicksPerSecond !== undefined) {
|
||||
this.renderTicksPerSecond = renderTicksPerSecond;
|
||||
}
|
||||
|
||||
this.requestUpdate();
|
||||
}
|
||||
|
||||
@@ -624,6 +642,14 @@ export class PerformanceOverlay extends LitElement implements Layer {
|
||||
<span>${this.tickDelayAvg.toFixed(2)}ms</span>
|
||||
(max: <span>${this.tickDelayMax}ms</span>)
|
||||
</div>
|
||||
<div class="performance-line">
|
||||
Worker ticks/s:
|
||||
<span>${this.workerTicksPerSecond.toFixed(1)}</span>
|
||||
</div>
|
||||
<div class="performance-line">
|
||||
Render ticks/s:
|
||||
<span>${this.renderTicksPerSecond.toFixed(1)}</span>
|
||||
</div>
|
||||
<div class="performance-line">
|
||||
Ticks per render:
|
||||
<span>${this.ticksPerRender}</span>
|
||||
|
||||
Reference in New Issue
Block a user