public SpriteDefinition AddSpriteDefinition(string spriteName, RectangleInt spriteRectangle, Vector? origin = null)
 {
     var spriteDefinition = new SpriteDefinition(this, spriteName, spriteRectangle, origin);
     this.definitions.Add(spriteName, spriteDefinition);
     return spriteDefinition;
 }
 public SpriteAnimationTemplate AddFrame(SpriteDefinition frameSprite, float duration, SpriteTransform transform = null)
 {
     this.frames.Add(new SpriteAnimationFrameTemplate(frameSprite, duration, transform));
     return this;
 }
 internal SpriteAnimationFrameTemplate(SpriteDefinition frameSprite, float duration, SpriteTransform transform = null)
 {
     this.FrameSprite = frameSprite;
     this.Duration = duration;
     this.Transform = transform;
 }