gpt4 book ai didi

用于随机地形生成的 Java 2D Perlin 噪声

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:11:02 29 4
gpt4 key购买 nike

我叫 Chris,正在开发我的第一个 Java 游戏。到目前为止,我已经创建了一个基于图 block 的 2D 游戏,但是我的关卡是以这样一种方式完成的,如果我创建一个图像并且它全是绿色,那么绿色就代表草图 block 。如果我放置一个蓝色像素,游戏会将其指定为水砖。

但是,这将游戏限制在我设计关卡的方式上,我宁愿拥有无限大的地 block 地形。

作为初学者,我查找了不同的方法来做到这一点。一种特别尖锐的方法是一种叫做 Perlin Noise 的方法。

我调查了一下,但它看起来很复杂。

有人介意用更简单的术语来定义它吗?

此外,如果您有任何教程可以将其“简化”并提供简要概述,那就太棒了!

抱歉,我没有说得太具体,我实际上是在避免这样做。

最佳答案

我建议跳过 Perlin Noise,看看名为 OpenSimplex Noise 的东西。 .

它对基本上与 Perlin 噪声相同的所有事物都很有用,但它的可见方向伪影要少得多。基本上,噪声采用输入坐标(2D、3D 或 4D)并返回一个介于 -1 和 1 之间的值。输出值随着输入坐标的变化而连续变化。

这是使用噪声(x/24.0,y/24.0)生成的三张 256x256 图像:

  • 第一个是原始噪声
  • 第二个为绿色,值大于零,否则为蓝色
  • 第三个为蓝色,值大于 -0.2 且小于 0.2,否则为绿色。

请注意,与 Perlin 噪声相比,还有 Simplex Noise(与 OpenSimplex 不同的算法)减少了方向性伪影,但是 Simplex Noise 的 3D 和更高实现(如果您碰巧想使用 3D 噪声来改变 2D 中的任何东西时间)背负着专利。

OpenSimplex Noise 实际上是我为自己的游戏开发的一种算法,我知道这是一个无耻的插件,但我认为它是可用的中最适合你的。

关于用于随机地形生成的 Java 2D Perlin 噪声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25816351/

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