public void Initialize(AppConfig config) { if (map != null) { map.Dispose(); } fileName = config.MapFileName; userDragSpeed = config.UserDragSpeed; server = new TileServer(config.MapSize.x, config.MapSize.y, prefab.GetPrefabCount(), config.RefreshIntervalSeconds, networkLatency); ITileFactory factory; if (config.RefreshTiles) { factory = new TimedProxyTileFactory(server, config.RefreshIntervalSeconds); } else { factory = new ProxyTileFactory(server); } ITileLoadingStrategy tileLoadingStrategy; if (config.LoadPotentialTiles) { tileLoadingStrategy = new EagerLoadingStrategy(); } else { tileLoadingStrategy = new LazyLoadingStrategy(); } storage = new TileStorage(factory); Map simpleMap = new Map(storage.Load(fileName), factory, tileLoadingStrategy, prefab, config.MapSize.x, config.MapSize.y); if (config.LimitTilesCount) { map = new LimitedMap(simpleMap, config.MaxTilesCount); } else { map = simpleMap; } area = new VisibleArea(map); initialized = true; }
public void FillFrom(Chunk component) { ChunkWorldMapLocationPoint = component.ChunkWorldMapLocationPoint; Bounds = new Microsoft.Xna.Framework.BoundingBox(component.Bounds.Min, component.Bounds.Max); WorldPositionBottomLeftCorner = component.WorldPositionBottomLeftCorner; var tiles = component.GetChunkTiles(); if (tiles != null) { ChunkResolution = Constants.ChunkSize; Tiles = new TileStorage[ChunkResolution * ChunkResolution]; for (int i = 0; i < ChunkResolution; i++) { for (int j = 0; j < ChunkResolution; j++) { Tiles[i * ChunkResolution + j] = tiles[i][j]; } } } }
public void Initialize(AppConfig config) { if (map != null) { map.Dispose (); } fileName = config.MapFileName; userDragSpeed = config.UserDragSpeed; server = new TileServer (config.MapSize.x, config.MapSize.y, prefab.GetPrefabCount (), config.RefreshIntervalSeconds, networkLatency); ITileFactory factory; if (config.RefreshTiles) { factory = new TimedProxyTileFactory (server, config.RefreshIntervalSeconds); } else { factory = new ProxyTileFactory (server); } ITileLoadingStrategy tileLoadingStrategy; if (config.LoadPotentialTiles) { tileLoadingStrategy = new EagerLoadingStrategy (); } else { tileLoadingStrategy = new LazyLoadingStrategy (); } storage = new TileStorage (factory); Map simpleMap = new Map (storage.Load (fileName), factory, tileLoadingStrategy, prefab, config.MapSize.x, config.MapSize.y); if (config.LimitTilesCount) { map = new LimitedMap (simpleMap, config.MaxTilesCount); } else { map = simpleMap; } area = new VisibleArea (map); initialized = true; }
public CBSlot(TileStorage owner, ComputeBuffer buffer) : base(owner) { Buffer = buffer; }
public CPUSlot(TileStorage owner, int size) : base(owner) { Data = new T[size]; Size = size; }
public GPUSlot(TileStorage owner, RenderTexture texture) : base(owner) { Texture = texture; }
public static int NOPH_TileStorage_new() { TileStorage ret = new TileStorage(); int registeredHandle = CRunTime.registerObject(ret); ts_id = registeredHandle; return registeredHandle; }
void Awake() { PathComponent = GetComponent <AstarPath>(); TileStorageComponent = Target.GetComponent <TileStorage>(); }