FrameStats
Defined in: src/modules/stats/frame-stats.ts:41
Headless frame-timing collector (see the description on
FrameStatsOptions): sample each frame’s duration, then read back
current/min/max/avg frame time and FPS, the 1%/0.1% lows, a recent-history
ring for sparklines, and named counters. Allocation-free on the hot path.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new FrameStats(
options?):FrameStats
Defined in: src/modules/stats/frame-stats.ts:59
Parameters
Section titled “Parameters”options?
Section titled “options?”FrameStatsOptions = {}
Returns
Section titled “Returns”FrameStats
Accessors
Section titled “Accessors”avgFps
Section titled “avgFps”Get Signature
Section titled “Get Signature”get avgFps():
number
Defined in: src/modules/stats/frame-stats.ts:73
Returns
Section titled “Returns”number
Get Signature
Section titled “Get Signature”get avgMs():
number
Defined in: src/modules/stats/frame-stats.ts:79
Returns
Section titled “Returns”number
counters
Section titled “counters”Get Signature
Section titled “Get Signature”get counters():
ReadonlyMap<string,number>
Defined in: src/modules/stats/frame-stats.ts:88
Returns
Section titled “Returns”ReadonlyMap<string, number>
Get Signature
Section titled “Get Signature”get fps():
number
Defined in: src/modules/stats/frame-stats.ts:92
Returns
Section titled “Returns”number
history
Section titled “history”Get Signature
Section titled “Get Signature”get history():
number[]
Defined in: src/modules/stats/frame-stats.ts:101
Recent frame durations (ms) oldest→newest, for a sparkline. A fresh
array is built per call (small, bounded by historySize); call it once
per draw, not in the hot loop.
Returns
Section titled “Returns”number[]
low01Fps
Section titled “low01Fps”Get Signature
Section titled “Get Signature”get low01Fps():
number
Defined in: src/modules/stats/frame-stats.ts:111
0.1% low FPS: the 99.9th-percentile frame time expressed as FPS.
Returns
Section titled “Returns”number
low1Fps
Section titled “low1Fps”Get Signature
Section titled “Get Signature”get low1Fps():
number
Defined in: src/modules/stats/frame-stats.ts:116
1% low FPS: the 99th-percentile frame time expressed as FPS.
Returns
Section titled “Returns”number
maxFps
Section titled “maxFps”Get Signature
Section titled “Get Signature”get maxFps():
number
Defined in: src/modules/stats/frame-stats.ts:121
Highest FPS in the window — derived from the best frame time.
Returns
Section titled “Returns”number
Get Signature
Section titled “Get Signature”get maxMs():
number
Defined in: src/modules/stats/frame-stats.ts:126
Worst (longest) frame in the window — the visible hitch.
Returns
Section titled “Returns”number
minFps
Section titled “minFps”Get Signature
Section titled “Get Signature”get minFps():
number
Defined in: src/modules/stats/frame-stats.ts:136
Lowest FPS in the window — derived from the worst frame time.
Returns
Section titled “Returns”number
Get Signature
Section titled “Get Signature”get minMs():
number
Defined in: src/modules/stats/frame-stats.ts:141
Best (shortest) frame in the window.
Returns
Section titled “Returns”number
Get Signature
Section titled “Get Signature”get ms():
number
Defined in: src/modules/stats/frame-stats.ts:153
Most recent frame duration (ms), or 0 before the first sample.
Returns
Section titled “Returns”number
Methods
Section titled “Methods”reset()
Section titled “reset()”reset():
void
Defined in: src/modules/stats/frame-stats.ts:175
Clear all samples, counters, and the internal clock.
Returns
Section titled “Returns”void
sample()
Section titled “sample()”sample(
deltaMs):void
Defined in: src/modules/stats/frame-stats.ts:191
Record one frame’s measured duration (ms). Advances an internal clock by
deltaMs and evicts samples older than windowMs. Non-positive or
non-finite deltas are ignored (the first rAF frame reports 0, and a
paused tab can yield spikes/NaN — neither should pollute the stats).
Parameters
Section titled “Parameters”deltaMs
Section titled “deltaMs”number
Returns
Section titled “Returns”void
setCounter()
Section titled “setCounter()”setCounter(
label,value):void
Defined in: src/modules/stats/frame-stats.ts:215
Set/overwrite a named counter (e.g. live entity counts) for display.
Parameters
Section titled “Parameters”string
number
Returns
Section titled “Returns”void