public static void RebindTexture( this ITextureBinder textureBinder, IntPtr id, ISpriteTexture spriteTexture) { var realSpriteTexture = (MonoSpriteDrawing.CSpriteTexture)spriteTexture; textureBinder.RebindTexture(id, realSpriteTexture.Texture); }
public void SizeChanged() { var rect = SpriteGroup.GetVisibilityRectangleForFrameGroup(); if (rect.Width == Width && rect.Height == Height) { return; } Width = rect.Width; Height = rect.Height; _spriteTexture?.Dispose(); _spriteTexture = _drawing.CreateSpriteTexture(Width, Height); if (TextureId == IntPtr.Zero) { TextureId = _textureBinder.BindTexture(_spriteTexture); } else { _textureBinder.RebindTexture(TextureId, _spriteTexture); } Draw(0, 0); }