Skip to content
Isthimius edited this page Jun 22, 2026 · 1 revision

Gondwana uses a high-resolution tick-based timing model.

Real elapsed time is measured with HighResTimer, while recurring or one-shot scheduled behavior is exposed through Timer.


Engine timing flow

Every engine cycle computes elapsed time and uses that to drive:

  • timer events
  • animation advancement
  • sprite movement
  • camera updates
  • CPS/FPS sampling

Timers

Timers can be:

  • pre-cycle
  • post-cycle
  • once
  • repeating

This lets gameplay code schedule work at predictable points in the cycle. Users can instantiate their own Timers, and the corresponding event(s) will be raised by the Engine.


Why ticks matter

Ticks are the engine’s low-level clock. Seconds are usually derived from them, but the underlying representation stays high-resolution and stable.


Performance metrics

The engine also samples gross CPS (cycles per second, background tasks) and rendered FPS (frames per second, foreground tasks). Those numbers are useful when diagnosing whether you are CPU-bound, render-bound, or simply not invalidating enough to repaint frequently.


Where to read next

  • Gondwana/Timers/HighResTimer.cs
  • Gondwana/Timers/Timer.cs
  • Gondwana/Engine.cs

Clone this wiki locally