// Exposed public Chunk.Data Generate(Vector2DI inChunkPos) { Chunk.Data newChunkData = new Chunk.Data(inChunkPos); NoiseGenerator.Output chunkNoiseData = _noiseGenerator.Generate(inChunkPos); TileMapGenerator.Output chunkTileMapData = _tileMapGenerator.Generate(inChunkPos, chunkNoiseData); newChunkData.SetTiles(chunkTileMapData.tiles); return(newChunkData); }
public Chunk GenerateChunk(Vector2DInt inPosition) { Chunk newChunk = new Chunk(inPosition); NoiseGenerator.Output noiseData = _noiseGenerator.Generate(inPosition); TileMapGenerator.Output tileMap = _tileMapGenerator.Generate(inPosition, noiseData); newChunk.SetTiles(tileMap.tiles); return(newChunk); }
public Output Generate(Vector2DInt inChunkPos, NoiseGenerator.Output inNoiseData) { Output newOutput = new Output(_chunkSize); for (int y = 0; y < _chunkSize; y++) { for (int x = 0; x < _chunkSize; x++) { newOutput.tiles[x, y] = new Tile(new Vector2DInt(x, y), inChunkPos, new Terrain(TerrainGenerator.GetTerrainType(inNoiseData.heightMap[x, y]))); } } return(newOutput); }