protected override void RemoveCore(Tile item) { base.RemoveCore(item); TileCoord coord = _locations[item.Uid]; Rectangle dest = new Rectangle(coord.X * TileWidth, coord.Y * TileHeight, TileWidth, TileHeight); _tileSource.Clear(dest); _texturePool.Invalidate(_tileSource.Uid); _openLocations.Add(_locations[item.Uid]); _locations.Remove(item.Uid); if (ShouldReduceTexture()) { ReduceTexture(); } }