}         // AddSpriteToRender(texture, x, y)

        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        public static void AddSpriteToRender(
            Texture texture, int x, int y)
        {
            AddSpriteToRender(texture,
                              new Rectangle(x, y,
                                            texture.GfxRectangle.Width, texture.GfxRectangle.Height));
        }         // AddSpriteToRender(texture, x, y)
        }         // AddSpriteToRender(tex, rect, pixelRect)

        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="tex">Tex</param>
        /// <param name="rect">Rectangle</param>
        /// <param name="pixelRect">Pixel rectangle</param>
        /// <param name="rotation">Rotation</param>
        public static void AddSpriteToRender(Texture tex,
                                             Rectangle rect, Rectangle pixelRect,
                                             float rotation, Vector2 rotationPoint, Color col)
        {
            sprites.Add(new SpriteToRender(
                            tex, rect, pixelRect, rotation, rotationPoint, col));
        }         // AddSpriteToRender(tex, rect, pixelRect)
        }         // AddSpriteToRender(texture, rect, gfxRect)

        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="rect">Rectangle</param>
        /// <param name="gfxRect">Gfx rectangle</param>
        public static void AddSpriteToRender(
            Texture texture, Rectangle rect, Rectangle gfxRect, Color color,
            SpriteBlendMode blendMode)
        {
            sprites.Add(
                new SpriteToRender(texture, rect, gfxRect, color, blendMode));
        }         // AddSpriteToRender(texture, rect, gfxRect)
 /// <summary>
 /// Create sprite to render
 /// </summary>
 /// <param name="setTexture">Set texture</param>
 /// <param name="setRect">Set rectangle</param>
 /// <param name="setPixelRect">Set source rectangle</param>
 /// <param name="setColor">Set color</param>
 public SpriteToRender(Texture setTexture, Rectangle setRect,
                       Rectangle setPixelRect, Color setColor)
 {
     texture   = setTexture;
     rect      = setRect;
     pixelRect = setPixelRect;
     color     = setColor;
 }             // SpriteToRender(setTexture, setRect, setSourceRect)
        }         // AddSpriteToRender(tex, rect, pixelRect)

        /// <summary>
        /// Add sprite to render centered
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="x">X</param>
        /// <param name="y">Y</param>
        /// <param name="scale">Scale</param>
        public static void AddSpriteToRenderCentered(
            Texture texture, float x, float y, float scale)
        {
            AddSpriteToRender(texture, new Rectangle(
                                  (int)(x * 1024 - scale * texture.GfxRectangle.Width / 2),
                                  (int)(y * 768 - scale * texture.GfxRectangle.Height / 2),
                                  (int)(scale * texture.GfxRectangle.Width),
                                  (int)(scale * texture.GfxRectangle.Height)));
        }         // AddSpriteToRenderCentered(texture, x, y)
            }             // SpriteToRender(setTex, setRect, setPixelRect)

            /// <summary>
            /// Create sprite to render
            /// </summary>
            /// <param name="setTex">Set tex</param>
            /// <param name="setRect">Set rectangle</param>
            /// <param name="setPixelRect">Set pixel rectangle</param>
            /// <param name="setRotation">Set rotation</param>
            /// <param name="setRotationPoint">Set rotation point</param>
            public SpriteToRender(Texture setTex, Rectangle setRect,
                                  Rectangle setPixelRect, float setRotation, Vector2 setRotationPoint)
            {
                texture       = setTex;
                rect          = setRect;
                pixelRect     = setPixelRect;
                rotation      = setRotation;
                rotationPoint = setRotationPoint;
            }             // SpriteToRender(setTex, setRect, setPixelRect)
            }             // SpriteToRender(setTexture, setRect, setSourceRect)

            /// <summary>
            /// Create sprite to render
            /// </summary>
            /// <param name="setTex">Set tex</param>
            /// <param name="setRect">Set rectangle</param>
            /// <param name="setPixelRect">Set pixel rectangle</param>
            /// <param name="setColor">Set color</param>
            /// <param name="alphaMode">Alpha mode</param>
            public SpriteToRender(Texture setTex, Rectangle setRect,
                                  Rectangle setPixelRect, Color setColor,
                                  SpriteBlendMode setBlendMode)
            {
                texture   = setTex;
                rect      = setRect;
                pixelRect = setPixelRect;
                color     = setColor;
                blendMode = setBlendMode;
            }             // SpriteToRender(setTex, setRect, setPixelRect)
        }         // AddSpriteToRenderCentered(texture, x, y)

        /// <summary>
        /// Add sprite to render centered
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="pos">Position</param>
        public static void AddSpriteToRenderCentered(
            Texture texture, float x, float y)
        {
            AddSpriteToRenderCentered(texture, x, y, 1);
        }         // AddSpriteToRenderCentered(texture, x, y)
        }         // AddSpriteToRenderCentered(texture, x, y)

        /// <summary>
        /// Add sprite to render centered
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="pos">Position</param>
        public static void AddSpriteToRenderCentered(
            Texture texture, Vector2 pos)
        {
            AddSpriteToRenderCentered(texture, pos.X, pos.Y);
        }         // AddSpriteToRenderCentered(texture, pos)
        /// <summary>
        /// Add sprite to render centered
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="x">X</param>
        /// <param name="y">Y</param>
        /// <param name="scale">Scale</param>
        public static void AddSpriteToRenderCentered(
			Texture texture, float x, float y, float scale)
        {
            AddSpriteToRender(texture, new Rectangle(
                (int)(x * 1024 - scale * texture.GfxRectangle.Width/2),
                (int)(y * 768 - scale * texture.GfxRectangle.Height/2),
                (int)(scale * texture.GfxRectangle.Width),
                (int)(scale * texture.GfxRectangle.Height)));
        }
        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="tex">Tex</param>
        /// <param name="rect">Rectangle</param>
        /// <param name="pixelRect">Pixel rectangle</param>
        /// <param name="rotation">Rotation</param>
        public static void AddSpriteToRender(Texture tex,
			Rectangle rect, Rectangle pixelRect,
			float rotation, Vector2 rotationPoint, Color col)
        {
            sprites.Add(new SpriteToRender(
                tex, rect, pixelRect, rotation, rotationPoint, col));
        }
        /// <summary>
        /// Add sprite to render centered
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="pos">Position</param>
        public static void AddSpriteToRenderCentered(
			Texture texture, float x, float y)
        {
            AddSpriteToRenderCentered(texture, x, y, 1);
        }
        }         // AddSpriteToRender(texture, x, y)

        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        public static void AddSpriteToRender(
            Texture texture)
        {
            AddSpriteToRender(texture, new Rectangle(0, 0, 1024, 768));
        }         // AddSpriteToRender(texture)
        /// <summary>
        /// Add sprite to render centered
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="pos">Position</param>
        public static void AddSpriteToRenderCentered(
			Texture texture, Vector2 pos)
        {
            AddSpriteToRenderCentered(texture, pos.X, pos.Y);
        }
            /// <summary>
            /// Create sprite to render
            /// </summary>
            /// <param name="setTex">Set tex</param>
            /// <param name="setRect">Set rectangle</param>
            /// <param name="setPixelRect">Set pixel rectangle</param>
            /// <param name="setColor">Set color</param>
            /// <param name="alphaMode">Alpha mode</param>
            public SpriteToRender(Texture setTex, Rectangle setRect,
				Rectangle setPixelRect, Color setColor,
				SpriteBlendMode setBlendMode)
            {
                texture = setTex;
                rect = setRect;
                pixelRect = setPixelRect;
                color = setColor;
                blendMode = setBlendMode;
            }
        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        public static void AddSpriteToRender(
			Texture texture, int x, int y)
        {
            AddSpriteToRender(texture,
                new Rectangle(x, y,
                texture.GfxRectangle.Width, texture.GfxRectangle.Height));
        }
        }         // AddSpriteToRender(texture, rect, gfxRect)

        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="rect">Rectangle</param>
        /// <param name="gfxRect">Gfx rectangle</param>
        public static void AddSpriteToRender(
            Texture texture, Rectangle rect, Rectangle gfxRect)
        {
            sprites.Add(new SpriteToRender(texture, rect, gfxRect, Color.White));
        }         // AddSpriteToRender(texture, rect, gfxRect)
        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="rect">Rectangle</param>
        /// <param name="gfxRect">Gfx rectangle</param>
        public static void AddSpriteToRender(
			Texture texture, Rectangle rect, Rectangle gfxRect, Color color,
			SpriteBlendMode blendMode)
        {
            sprites.Add(
                new SpriteToRender(texture, rect, gfxRect, color, blendMode));
        }
        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="rect">Rectangle</param>
        /// <param name="gfxRect">Gfx rectangle</param>
        public static void AddSpriteToRender(
			Texture texture, Rectangle rect, Rectangle gfxRect)
        {
            sprites.Add(new SpriteToRender(texture, rect, gfxRect, Color.White));
        }
            /// <summary>
            /// Create sprite to render
            /// </summary>
            /// <param name="setTex">Set tex</param>
            /// <param name="setRect">Set rectangle</param>
            /// <param name="setPixelRect">Set pixel rectangle</param>
            /// <param name="setRotation">Set rotation</param>
            /// <param name="setRotationPoint">Set rotation point</param>
            public SpriteToRender(Texture setTex, Rectangle setRect,
				Rectangle setPixelRect, float setRotation, Vector2 setRotationPoint,
				Color setCol)
            {
                texture = setTex;
                rect = setRect;
                pixelRect = setPixelRect;
                rotation = setRotation;
                rotationPoint = setRotationPoint;
                color = setCol;
            }
        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        public static void AddSpriteToRender(
			Texture texture)
        {
            AddSpriteToRender(texture, new Rectangle(0, 0, 1024, 768));
        }
        }         // AddSpriteToRender(texture, rect, color)

        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="rect">Rectangle</param>
        public static void AddSpriteToRender(
            Texture texture, Rectangle rect)
        {
            AddSpriteToRender(texture, rect, texture.GfxRectangle, Color.White);
        }         // AddSpriteToRender(texture, rect)
        /// <summary>
        /// Add sprite to render
        /// </summary>
        /// <param name="texture">Texture</param>
        /// <param name="rect">Rectangle</param>
        public static void AddSpriteToRender(
			Texture texture, Rectangle rect)
        {
            AddSpriteToRender(texture, rect, texture.GfxRectangle, Color.White);
        }
            /// <summary>
            /// Create sprite to render
            /// </summary>
            /// <param name="setTexture">Set texture</param>
            /// <param name="setRect">Set rectangle</param>
            /// <param name="setPixelRect">Set source rectangle</param>
            /// <param name="setColor">Set color</param>
            public SpriteToRender(Texture setTexture, Rectangle setRect,
				Rectangle setPixelRect, Color setColor)
            {
                texture = setTexture;
                rect = setRect;
                pixelRect = setPixelRect;
                color = setColor;
            }