public void Loop() { _unprocessedTime = 0; _updates = 0; if (EnableRender) { _renderer.Initialize(); } OnInit.Raise(this, null); // TODO: Need a way to break the loop from outside. while (IsApplicationIdle()) { LimitFramerate(); SimulateFrame(); } // TODO: Probably clean up when loop is broken. }