/// <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) { graphics.GraphicsDevice.SetRenderTarget(renderTarget); graphics.GraphicsDevice.Clear(Defaults.SpaceBlue); spriteBatch.Begin(); if (CurrentScreen == Screen.Gameplay) { currentBackground.Draw(spriteBatch); GamePlayScreen.Draw(spriteBatch); } if (Fade.ShowingFade) { Fade.Draw(spriteBatch); } spriteBatch.End(); graphics.GraphicsDevice.SetRenderTarget(null); graphics.GraphicsDevice.Clear(Color.Black); spriteBatch.Begin(); spriteBatch.Draw(renderTarget, new Rectangle(0, 0, ScreenWidth, ScreenHeight), Color.White); spriteBatch.End(); base.Draw(gameTime); }