Пример #1
0
    private void GenerateHexagonGrid()
    {
        float offsetX = 0.38f;
        float offsetZ = 0.32f;

        for (int x = 0; x < width; x++)
        {
            for (int y = 0; y < height; y++)
            {
                float posX = x * offsetX;

                if (y % 2 == 1)
                {
                    posX += offsetX / 2;
                }

                GameObject _newCell = Instantiate(PrefabCell, new Vector3(posX, 0, y * offsetZ), Quaternion.identity);

                CellBase _cell = _newCell.GetComponent <CellBase>();
                CellNode _node = new CellNode();
                _node.GridX = x;
                _node.GridY = y;
                _cell.SetNode(_node);

                _newCell.transform.parent = ParentForCells;
            }
        }
    }