Just to elaborate a bit for anyone coming from a traditional FGC frame-timing mindset:
At first glance, OpenBOR running at
200 Hz update might look kind of stupid, because it doesn’t divide cleanly into
60 FPS. From a purely frame-based perspective, you might assume we should move to
240 Hz (60×4) or even
180 Hz (60×3) so everything lines up perfectly.
That isn’t the goal.
OpenBOR is built around
centisecond timing, not frame timing. The engine measures time in hundredths of a second and updates at a rate chosen to support that model. Consider the comparison:
- 200 Hz: one engine update = 5 ms = 0.5 centiseconds
- 60 FPS: one frame = 1.666666… centiseconds
IOW, you can align perfectly to
centiseconds, or you can align perfectly to
60 FPS frames, but you cannot do both at the same time.
OpenBOR chooses centiseconds for several reasons:
- Centisecond timing eliminates a lot of frame based rounding issues.
- Time based simulation is how most modern engines work. One of them being that any framerate loss is less likely to louse up in game mechanics.
- Centiseconds are generally easier for new creators to grasp than strict frame math.
Frame-based timing is still possible conceptually, but internally the engine remains centisecond-driven by design.
DC