void AddCellToChunk(int x, int z, TriCell cell) { int chunkX = x / TriMetrics.chunkSizeX; int chunkZ = z / TriMetrics.chunkSizeZ; TriGridChunk chunk = chunks[chunkX + chunkZ * chunkCountX]; int localX = x - chunkX * TriMetrics.chunkSizeX; int localZ = z - chunkZ * TriMetrics.chunkSizeZ; chunk.AddCell(localX + localZ * TriMetrics.chunkSizeX, cell); }
void CreateChunks() { chunks = new TriGridChunk[chunkCountX * chunkCountZ]; for (int z = 0, i = 0; z < chunkCountZ; z++) { for (int x = 0; x < chunkCountX; x++) { TriGridChunk chunk = chunks[i++] = Instantiate(chunkPrefab); chunk.transform.SetParent(transform); } } }
IEnumerator <WaitForEndOfFrame> CreateChunks() { chunks.Clear(); for (int z = 0, i = 0; z < chunkCountZ; z++) { for (int x = 0; x < chunkCountX; x++) { TriGridChunk chunk = Instantiate(chunkPrefab); chunks.Add(chunk); chunk.transform.SetParent(transform); } } yield return(null); }