public SpaceJunk(float x, float miny, float maxy, BitmapTexture2D texture, float scale) { Sprite = new Sprite(texture, scale); Sprite.UseCentreAsOrigin = true; Sprite.X = x; Sprite.Y = Program.Rand.NextSingle() * (maxy - miny) + miny; }
public SpaceJunk(float x, float y, BitmapTexture2D texture, float scale) { Sprite = new Sprite(texture, scale); Sprite.UseCentreAsOrigin = true; Sprite.X = x; Sprite.Y = y; }
protected virtual void UpdateImage() { using (var ctx = Graphics.FromImage(BitmapTexture2D.Blank.Bitmap)) { var size = ctx.MeasureString(Value, Font); SubrectWidth = (float)Math.Ceiling(size.Width); SubrectHeight = (float)Math.Ceiling(size.Height); } if (Texture.Bitmap.Width < SubrectWidth || Texture.Bitmap.Height < SubrectHeight) { if (Texture != BitmapTexture2D.Blank) { Texture.Dispose(); } int newWidth = Math.Max((int)SubrectWidth, Texture.Bitmap.Width); int newHeight = Math.Max((int)SubrectHeight, Texture.Bitmap.Height); Texture = new BitmapTexture2D(MathHelper.NextPowerOfTwo(newWidth), MathHelper.NextPowerOfTwo(newHeight)); } using (var ctx = Graphics.FromImage(Texture.Bitmap)) { ctx.SmoothingMode = SmoothingMode.HighQuality; ctx.Clear(Color.Transparent); var path = new GraphicsPath(); path.AddString(Value, Font.FontFamily, (int)Font.Style, ctx.DpiY * Font.Size / 72f, PointF.Empty, StringFormat.GenericDefault); ctx.FillPath(_brush, path); } Texture.Invalidate(); }
public Sprite(float width, float height, Color4 colour) { Texture = BitmapTexture2D.Blank; Position = new Vector2(); Scale = new Vector2(width, height); SubrectOffset = new Vector2(0, 0); SubrectSize = new Vector2(Texture.Width, Texture.Height); FlipHorizontal = false; FlipVertical = false; Rotation = 0; UseCentreAsOrigin = false; Colour = colour; }
public Sprite(BitmapTexture2D texture, float scale = 1.0f) { Texture = texture; Position = new Vector2(); SubrectOffset = new Vector2(0, 0); SubrectSize = new Vector2(Texture.Width, Texture.Height); FlipHorizontal = false; FlipVertical = false; Rotation = 0; UseCentreAsOrigin = false; Colour = new Color4(1.0f, 1.0f, 1.0f, 1.0f); Scale = new Vector2(scale, scale); }
private void LoadSprites() { if (_sNodeSprite != null && _sConnSprite != null) { return; } var nodeTex = new BitmapTexture2D(Properties.Resources.Circle, TextureMinFilter.LinearMipmapLinear, TextureMagFilter.Linear); var connTex = new BitmapTexture2D(Properties.Resources.Connection, TextureMinFilter.LinearMipmapLinear, TextureMagFilter.Linear); _sNodeSprite = new Sprite(nodeTex, Scale) { UseCentreAsOrigin = true }; _sConnSprite = new Sprite(connTex) { UseCentreAsOrigin = true }; }
public Damagable(float x, float y, BitmapTexture2D texture, float scale) : base(x, y, texture, scale) { }
public Damagable(float x, float miny, float maxy, BitmapTexture2D texture, float scale) : base(x, miny, maxy, texture, scale) { }
private void LoadSprites() { if (_sNodeSprite != null && _sConnSprite != null) return; var nodeTex = new BitmapTexture2D(Properties.Resources.Circle, TextureMinFilter.LinearMipmapLinear, TextureMagFilter.Linear); var connTex = new BitmapTexture2D(Properties.Resources.Connection, TextureMinFilter.LinearMipmapLinear, TextureMagFilter.Linear); _sNodeSprite = new Sprite(nodeTex, Scale) { UseCentreAsOrigin = true }; _sConnSprite = new Sprite(connTex) { UseCentreAsOrigin = true }; }