public void Start() { TerrainGpuGenerator.CleanUp(); if (_child == null) { _child = new GameObject("Chunks").transform; _child.parent = transform; } Build(); }
public IEnumerator GetChunkData(int chunkX, int chunkY, TerrainTile tile) { var coordinate = new IntegerCoordinate2D(chunkX, chunkY); if (ChunkExistsAt(coordinate)) { tile.data = _tileBuffer[coordinate].data; yield return(null); } else { yield return(gpuTerrainCompute ? TerrainGpuGenerator.GetChunkData(coordinate, this, tile) : TerrainCpuGenerator.GetChunkData(coordinate, this, tile)); } }
private void OnApplicationQuit() { TerrainGpuGenerator.CleanUp(); }