Engine Design - Pyrohax/Simpleton GitHub Wiki
Timestep
There are two common concepts for timesteps: variable and fixed. Variable is non-deterministic, unpredictable at very small or large steps, but can deliver smooth updates. Fixed is deterministic and predictable.
Rendering could be either fixed or variable. Physics should not be updated synchronously with any rendering (i.e. frame rate). Physics should update at a fixed rate to make it more predictable and easier to debug.
Further reading: