/// <summary> /// This is called when the game should draw itself. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Draw(GameTime gameTime) { base.Draw(gameTime); GameTimes.UpdateFPS(gameTime); if (GlobalState.ShowFPS) { _fpsLabel.SetText($"FPS: {GameTimes.FPS:0}"); } SpriteDrawer.BeginDraw(_camera); _currentState.Draw(); SpriteDrawer.EndDraw(); SpriteDrawer.BeginGUIDraw(); _currentState.DrawUI(); if (GlobalState.ShowFPS) { _fpsLabel.Draw(); } SpriteDrawer.EndGUIDraw(); SpriteDrawer.Render(); }