web-dev-qa-db-ja.com

最速のパーリンのような3Dノイズアルゴリズム?

ケン・パーリンが最初に彼のノイズを発明してから20年以上が経ちました。 Perlinに近いプロパティ(手続き型、自然に見えるグループ化、バンディングの縮小、通常のフィーチャサイズなど)を備えた、より高速な3Dノイズジェネレーターを作成できた人はいますか?

手続き型ワールドジェネレーターを構築しようとしていますが、現在、Perlinはそれをカットしていません。私の実装は今のところ最高ではないことを認めますが、とにかくそれを書き直そうとしているのなら、もっと良いアルゴリズムが利用できるかどうか疑問に思いました。

18
Nick Udell

あなたが欲しい シンプレックスノイズ

  • 計算コストが低い
  • 正方形のグリッドに基づいていないため、明らかな方向性のアーティファクトはありません
  • より高い次元へのスケーリングが向上:N次元のO(N ^ 2)とクラシックPerlinのO(2 ^ N)

良い説明があります ここ 。どうやらKenPerlinの実装例は、最も理解しやすいコードではありません。

16
Rob Agar

1年前、私もfast Perlinノイズが必要でしたが、ついにこれを実装しました。

Java Gaming これはJavaでは2Dですが、簡単に3Dに変換できます(実際、Java以外の言語でも)。

必要に応じて、noise2d * noise1d(または同様のトリック)のようなものを使用できます。これは、完全にレンダリングするトリックサンプル(noise2d * noise1dである必要があります) Javaソフトウェア です。

4
DzzD