public void Init(TileData mapData, TileAndWorldCoordConversion conversion) { this.mapData = mapData; this.conversion = conversion; this.instMap = new List <GameObject> [mapData.MapSize.x - 1, mapData.MapSize.y - 1]; for (int i = 0; i < mapData.MapSize.x - 1; i++) { for (int j = 0; j < mapData.MapSize.y - 1; j++) { instMap[i, j] = new List <GameObject>(); } } for (int x = 0; x < mapData.MapSize.x - 1; x++) { for (int y = 0; y < mapData.MapSize.y - 1; y++) { //UpdateIdx(new Vector2Int(x, y)); UpdateTileIdx(new Vector2Int(x, y)); } } }
void Awake() { const float TILE_SCALE = 1.0f; tileData = new MapUtil.TileData(); tileData.MapSize = tileMapSize; commandSystem = new MapUtil.CommandSystem(); var conversion = new MapUtil.TileAndWorldCoordConversion(tileData, TILE_SCALE); tileRenderer.Init(tileData, conversion); tileRaycaster.tileAndWorldConversion = conversion; tileRaycaster.tileData = tileData; cliffDrawSystem.Init(tileData, commandSystem); //Sync Camera Scale to TileDataMap Size.. this.UpdateAsObservable().Subscribe(_ => { cameraController.MovableBoundarySize = new Vector2(tileData.MapSize.x, tileData.MapSize.y); }); debugTileGridSystem.TileData = tileData; debugTileGridSystem.conversion = conversion; //Preview보여질 영역은 Tile영역보다 10%더 많이 보여야 함. float bigSize = tileData.MapSize.x * TILE_SCALE; if (tileData.MapSize.y * TILE_SCALE > bigSize) { bigSize = tileData.MapSize.y * TILE_SCALE; } Debug.LogFormat("bigsize={0}", bigSize); mapPreviewSystem.SetPreviewSize(bigSize * 1.1f); }