private void RefreshCulture()
        {
            Culture.Clear();

            foreach (var cell in CenteredCells)
            {
                foreach (var direction in EnumUtil.GetValues <HexDirection>())
                {
                    CultureTriangulator.TriangulateCultureInDirection(cell, direction, Culture);
                }
            }

            Culture.Apply();

            TerrainBaker.BakeIntoChunk(this);
        }
        private IEnumerator RefreshFarmland_Perform()
        {
            yield return(new WaitForEndOfFrame());

            while (IsRefreshingRivers)
            {
                yield return(new WaitForEndOfFrame());
            }

            FarmTriangulator.TriangulateFarmland();

            foreach (var chunk in Grid.Chunks)
            {
                TerrainBaker.BakeIntoChunk(chunk);
            }

            RefreshFarmlandCoroutine = null;
        }