gpt4 book ai didi

javascript - 程序生成

转载 作者:行者123 更新时间:2023-11-28 05:22:50 27 4
gpt4 key购买 nike

我对使用 php 生成程序 map 很感兴趣,它可以是静态的。我只需要让我走上正确的道路……我阅读了很多关于它的文章,并了解到我需要使用噪声生成来获得基本的 map 形状。但那之后呢?!我将使用 32x32 的简单瓷砖。它甚至可能/有效地通过 php 来完成吗?

最佳答案

考虑使用 Perlin 或 OpenSimplex 噪声。

您可以自己实现或简单地使用一个库:

https://github.com/martinlindhe/php-noisegenerator

您可以使用此库将高度图生成到数组中:

$perlin = new \NoiseGenerator\PerlinNoise(3000);
$width = 100;
$height = 100;

$octaves = array(64, 16, 4, 2);
$noise = array();
for ($y = 0; $y < $height; $y += 1) {
for ($x = 0; $x < $width; $x += 1) {
$num = $perlin->noise($x, $y, 0, $octaves);
$raw = ($num / 2) + .5;
if ($raw < 0) $raw = 0;
$noise[$x][$y] = $raw;
}
}

现在您已经填充了噪声数组,您可以使用 JS 或任何您想要的方式在前端用颜色表示它。我会让你弄清楚这方面的细节,但基本上,在你的高度图中找到你的数字范围,并确定不同类型地形的阈值。

我在这里写了一个关于生成高度图和使用噪声渲染它们的教程:https://plaxdev.wordpress.com/2017/05/04/procedurally-generating-islands/

这不使用 PHP,仅使用 JavaScript,但是如果您正在努力解决这个问题,那篇文章中包含了在 JS 中渲染高度图背后的想法。

关于javascript - 程序生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38946244/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com