public void SetRenderTarget(IPreDrawable painter, Vector size) { this.drawImplementation.SetRenderTarget(painter, size); }
public void SetRenderTarget(IPreDrawable painter, Vector size) { if (!this.renderTargetDictionary.TryGetValue(painter, out this.renderTargetWrap)) { this.renderTargetWrap = new RenderTargetWrap(); this.renderTargetDictionary.Add(painter, this.renderTargetWrap); } if (size.X > this.renderTargetWrap.ActualSize.X || size.Y > this.renderTargetWrap.ActualSize.Y) { this.renderTargetWrap.ActualSize = new Vector((int)(size.X * 1.2f), (int)(size.Y * 1.2f)); this.renderTargetWrap.RenderTarget2D = new RenderTarget2D(this.spriteBatch.GraphicsDevice, (int)this.renderTargetWrap.ActualSize.X, (int)this.renderTargetWrap.ActualSize.Y); } this.renderTargetWrap.Size = size; this.spriteBatch.GraphicsDevice.SetRenderTarget(this.renderTargetWrap.RenderTarget2D); this.SpriteBatchBegin(); this.spriteBatch.GraphicsDevice.Clear(GameFramework.Color.Transparent.ToXnaColor()); }
public void DrawPreDrawn(IPreDrawable painter) { this.drawImplementation.DrawPreDrawn(painter); }
public void DrawPreDrawn(IPreDrawable painter) { if (this.renderTargetDictionary.TryGetValue(painter, out this.renderTargetWrap)) { this.spriteBatch.Draw(this.renderTargetWrap.RenderTarget2D, this.spriteBatch.GraphicsDevice.Viewport.Bounds, new Microsoft.Xna.Framework.Rectangle(0, 0, (int)this.renderTargetWrap.Size.X, (int)this.renderTargetWrap.Size.Y), Color.White); } }