Changeset 269


Ignore:
Timestamp:
Apr 28, 2016, 1:58:34 PM (9 years ago)
Author:
alloc
Message:

Fixes #124: Send transparent tile for map tiles not available instead of 404

Location:
binary-improvements
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/7dtd-server-fixes/src/FileCache/MapTileCache.cs

    r199 r269  
    1717                private CurrentZoomFile[] cache;
    1818
    19                 public MapTileCache ()
     19                private byte[] transparentTile;
     20
     21                public MapTileCache (int _tileSize)
    2022                {
     23                        UnityEngine.Texture2D tex = new UnityEngine.Texture2D (_tileSize, _tileSize);
     24                        UnityEngine.Color nullColor = new UnityEngine.Color (0, 0, 0, 0);
     25                        for (int x = 0; x < _tileSize; x++) {
     26                                for (int y = 0; y < _tileSize; y++) {
     27                                        tex.SetPixel (x, y, nullColor);
     28                                }
     29                        }
     30                        transparentTile = tex.EncodeToPNG ();
     31                        UnityEngine.Object.Destroy (tex);
    2132                }
    2233
     
    7283
    7384                                        if (!File.Exists (filename)) {
    74                                                 return null;
     85                                                return transparentTile;
    7586                                        }
    7687                                        return File.ReadAllBytes (filename);
  • binary-improvements/MapRendering/MapRendering/MapRendering.cs

    r238 r269  
    2929                public static bool renderingEnabled = true;
    3030                private MicroStopwatch msw = new MicroStopwatch ();
    31                 private AllocsFixes.FileCache.MapTileCache cache = new AllocsFixes.FileCache.MapTileCache ();
     31                private AllocsFixes.FileCache.MapTileCache cache = new AllocsFixes.FileCache.MapTileCache (Constants.MAP_BLOCK_SIZE);
    3232
    3333                public static AllocsFixes.FileCache.MapTileCache GetTileCache() {
Note: See TracChangeset for help on using the changeset viewer.