public DummyZSprite(string prefix)
        {
            var gd = GameFacade.GraphicsDevice;

            var alpha = Texture2D.FromFile(gd, prefix + "a.png");
            var pixel = Texture2D.FromFile(gd, prefix + "p.png");
            var depth = Texture2D.FromFile(gd, prefix + "z.png");

            var tex       = new Texture2D(gd, pixel.Width, pixel.Height);
            var texData   = new Color[pixel.Width * pixel.Height];
            var alphaData = new Color[pixel.Width * pixel.Height];
            var pixelData = new Color[pixel.Width * pixel.Height];


            pixel.GetData(pixelData);
            alpha.GetData(alphaData);

            for (var i = 0; i < texData.Length; i++)
            {
                var pixelPx = pixelData[i];
                var alphaPx = alphaData[i];
                pixelPx.A = alphaPx.R;

                texData[i] = pixelPx;
            }

            tex.SetData(texData);
            pixel.Dispose();
            alpha.Dispose();


            Sprite = new HouseBatchSprite
            {
                Pixel      = tex,
                RenderMode = HouseBatchRenderMode.Z_BUFFER,
                Depth      = depth,
                SrcRect    = new Microsoft.Xna.Framework.Rectangle(0, 0, pixel.Width, pixel.Height),
                DestRect   = new Microsoft.Xna.Framework.Rectangle(0, 0, pixel.Width, pixel.Height)
            };
        }
 public void Draw(HouseBatchSprite sprite)
 {
     sprite.DrawOrder = DrawOrder++;
     Sprites.Add(sprite);
 }