/// <summary> /// Add a chunk at selected chunk coordinates /// </summary> private VoxelChunk AddChunk(int X, int Z) { VoxelChunk chunk = null; if (mChunkPool.Count != 0) { chunk = mChunkPool.Dequeue(); } else { chunk = VoxelChunk.NewPoolObj(this); Debug.LogWarning("Chunk pool was empty, so had to create a new object"); } chunk.Construct(X, Z); mActiveChunks[new ChunkID(X, Z)] = chunk; return(chunk); }