class

RenderLoop

requestAnimationFrame loop with frame timing, dirty checking, and FPS stats. Only renders when marked dirty.

Constructor

new RenderLoop(options?: RenderLoopOptions)
Parameter Type Description
options RenderLoopOptions optional Loop configuration

RenderLoopOptions

Field Type Description
targetFps number optional Target FPS (0 = unlimited) Default: 60

Properties

Name Type Access Description
running boolean readonly Whether the loop is active
isDirty boolean readonly Whether a render is pending

Methods

markDirty()

markDirty(): void

Signal that a render is needed.

Returns void

start()

start(): void

Start the render loop.

Returns void

stop()

stop(): void

Stop the render loop.

Returns void

onFrame()

onFrame(callback: (deltaMs: number, frameNumber: number) => void): void

Register a frame callback.

Returns void

offFrame()

offFrame(callback: FrameCallback): void

Remove a frame callback.

Returns void

getStats()

getStats(): FrameStats

Get { fps, frameDurationMs, totalFrames, skippedFrames }.

Returns FrameStats

destroy()

destroy(): void

Stop loop and release resources.

Returns void