public AreaCacheCollection() { areaCollection = new AreaCollection(); }
public void Initialize(Vector2i viewDistance, TerrainContext terrainContext) { this.terrainContext = terrainContext; areasAlwaysVisibleWithinDistance = Area.Size.X * 2; view = new ViewSettings(viewDistance); AreaCollection = new AreaCollection(); AreaCache = new AreaCacheCollection(); areaRange = new AreaRange(); viewDistanceAreaRange = new AreaRange(); visibilityQueue = new VisibilityQueue(terrainContext); Statistics = new TerrainVisibilityStatistics(this, AreaCache); SpawnPointHelper = new AreaSpawnPointHelper(terrainContext); Logger.RegisterLogLevelsFor<TerrainVisibility>(Logger.LogLevels.Adaptive); }