private void DrawToRenderTarget() { GraphicsDevice.SetRenderTarget(_charRenderTarget); GraphicsDevice.Clear(Color.Transparent); _sb.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend); var characterPropertyRenderers = _characterPropertyRendererBuilder .BuildList(_characterTextures, RenderProperties) .Where(x => x.CanRender); foreach (var renderer in characterPropertyRenderers) { renderer.Render(_sb, DrawArea); } if (_gameStateProvider.CurrentState == GameStates.None) { _sb.Draw(_outline, DrawArea.WithSize(DrawArea.Width, 1), Color.Black); _sb.Draw(_outline, DrawArea.WithPosition(new Vector2(DrawArea.X + DrawArea.Width, DrawArea.Y)).WithSize(1, DrawArea.Height), Color.Black); _sb.Draw(_outline, DrawArea.WithPosition(new Vector2(DrawArea.X, DrawArea.Y + DrawArea.Height)).WithSize(DrawArea.Width, 1), Color.Black); _sb.Draw(_outline, DrawArea.WithSize(1, DrawArea.Height), Color.Black); } _sb.End(); GraphicsDevice.SetRenderTarget(null); }
private void DrawToRenderTarget() { GraphicsDevice.SetRenderTarget(_charRenderTarget); GraphicsDevice.Clear(Color.Transparent); _sb.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend); var characterPropertyRenderers = _characterPropertyRendererBuilder .BuildList(_characterTextures, RenderProperties) .Where(x => x.CanRender); foreach (var renderer in characterPropertyRenderers) { renderer.Render(_sb, DrawArea); } _sb.End(); GraphicsDevice.SetRenderTarget(null); }