2

如何在我的 2D 游戏中随机形成岛屿?我不知道如何开始!

void generateMap()
{
    blocks.clear();
    for(int x = 0; x < 150; x++)
    {
        for(int y = 0; y < 150; y++)
        {
            if(Math.random() < 0.5)
                blocks.add(new Block(x * Block.blockSize, y * Block.blockSize, eBlockType.GRASS));
            else
                blocks.add(new Block(x * Block.blockSize, y * Block.blockSize, eBlockType.WATER));
        }
    }
}

图片

4

1 回答 1

5

你得到了不好的结果,因为你随机生成每个地形块。相反,您可能希望将先前生成的块考虑在内,以形成几乎真实的岛屿。

您可能应该看看Perlin 噪声Simplex 噪声算法。另见这篇文章,它详细解释了算法。

于 2013-10-05T15:52:40.027 回答