diff --git a/TrueCraft.Client/TrueCraftGame.cs b/TrueCraft.Client/TrueCraftGame.cs index a882eec..0e164be 100644 --- a/TrueCraft.Client/TrueCraftGame.cs +++ b/TrueCraft.Client/TrueCraftGame.cs @@ -81,6 +81,7 @@ namespace TrueCraft.Client Graphics.PreferredBackBufferWidth = UserSettings.Local.WindowResolution.Width; Graphics.PreferredBackBufferHeight = UserSettings.Local.WindowResolution.Height; Graphics.GraphicsProfile = GraphicsProfile.HiDef; + Graphics.PreparingDeviceSettings += PrepareDeviceSettings; Graphics.ApplyChanges(); Window.ClientSizeChanged += Window_ClientSizeChanged; Client = client; @@ -101,6 +102,11 @@ namespace TrueCraft.Client Components.Add(GamePadComponent); } + void PrepareDeviceSettings(object sender, PreparingDeviceSettingsEventArgs e) + { + e.GraphicsDeviceInformation.PresentationParameters.RenderTargetUsage = RenderTargetUsage.PreserveContents; + } + void Window_ClientSizeChanged(object sender, EventArgs e) { if (GraphicsDevice.Viewport.Width < 640 || GraphicsDevice.Viewport.Height < 480) @@ -418,7 +424,7 @@ namespace TrueCraft.Client GraphicsDevice.SetRenderTarget(null); - SpriteBatch.Begin(); + SpriteBatch.Begin(SpriteSortMode.Immediate, BlendState.Opaque); SpriteBatch.Draw(RenderTarget, Vector2.Zero, Color.White); SpriteBatch.End();