-1

私は連続世界の手続き型生成に取り組んでいます。
最近、高さマップの組み合わせを使用して、風景にいくつかの制約を適用する ようにアドバイスされました。

次のステップでは、プロシージャルに生成された 2 つのピースを互いに接続して、遷移がスムーズになるようにします。
より正確には、前のピースに基づいて次のピースを生成することがすべてです。それを行うための最良の方法は何だろうと思っています(高さマップを組み合わせたり、他の方法で)。
高さを生成するために、Diamond Square または Mid Displacement または囲んでいるポイント ベースのアルゴリズムを使用していた場合、最初のピースのエッジ値を 2 番目のピースのエッジに割り当て、これらのポイントの「ランダムな」値として使用することを考えます。この方法では、2 番目のピースの残りのすべてのポイントが、最初のピースから取得されたエッジ ポイントをすでに考慮に入れているため、移行はスムーズになります。
残念ながら (または幸いなことに)、高さを生成するためにシンプレックス ノイズ アルゴリズムを使用しています。これは勾配ベースのアルゴリズムです。

それで、あなたは何をお勧めしますか?

4

1 に答える 1

1

前の質問と同様の方法で行くことができます。

あなたの世界をいくつかのグリッドで分割し、結果として world があるchunks場合、すべてのチャンクを少し大きくして、隣のチャンクと重なるようにします。0次に、端に向かう長方形のグラデーションで高さマップを調整できます。最後に、重なり合うすべてのチャンクから変調された値を合計すると、1 つの高さマップと別の高さマップの間でスムーズな移行が得られるはずです。

最適なトランジションとパフォーマンスを得るには、チャンク スケール ファクターと勾配データを試してみる必要があります。幸いなことに、これらの操作の多くは、単純なレンダリングによって GPU で実行できます。

于 2014-05-07T10:59:29.200 に答える