public void ConnectNeighbors() { for (int i = 0; i < 6; i++) { if (!NeighborChunks[i]) { AdjacentDirection chunkDir = (AdjacentDirection)i; CubeChunk neighbor = grid.GetAdjacentChunk(this, chunkDir); if (neighbor) { NeighborChunks[i] = neighbor; neighbor.NeighborChunks[(int)chunkDir.ChunkOpposite()] = this; } } } }