Beispiel #1
0
        // 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);
        }
Beispiel #2
0
    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);
    }
Beispiel #3
0
            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);
            }