問題タブ [procedural-generation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4000 参照

audio - 手続き型サウンド生成アルゴリズム?

アルゴリズムでサウンド(モンスターのうなり声や遠くの雷など)を作成できるようにしたいと思います。これは、従来の手続き型コンテンツ(地形など)ほどネット上で広く取り上げられていません。これらの種類の音を作成しますか?

0 投票する
1 に答える
1676 参照

algorithm - ランダム ツリー ブランチの生成

木の単一の枝 (「木本」の種類) を生成 (のイメージ) したい。たぶん、このブランチ、またはこれに似ています。

興味深いがシンプルである必要があるため、分岐が 1 つだけで、いくつかのターンがあり、いくつかの分割 (1 つの手足から 2 つに変わる場所) のみです。1 つの太い枝から始めて、いくつかの細い枝に分割する必要があります。葉は別の問題なので、後で処理できると考えているため、葉については心配していません。

どこから始めればよいですか?これには何が関係していますか?

ありがとう

0 投票する
1 に答える
4123 参照

recursion - パーリンノイズやその他のアルゴリズムを使用して、ポイントツーポイントの「稲妻」をどのように作成しますか?

私が遭遇したパーリン ノイズ生成のすべての実装は、2D 地形などの生成用でした。ポイント ツー ポイントの稲妻生成の適切な例はどこにも見つかりません。

「稲妻」を生成する他の多くの形態はありますか? これが欲しいと言われました。分岐した稲妻、または 2D ツリーにはどのようなアルゴリズムが存在しますか (稲妻についてはこれを逆にすることもできます)

私は複数の言語で作業しているため、疑似コードの例も問題ありません。

0 投票する
3 に答える
7035 参照

language-agnostic - 2D で「ブロブ」グラフィックを手続き的に生成する良い方法

計算上高速な方法で「ブロブ」を作成しようとしています。ここでのブロブは、任意の形状のピクセルの集合として定義されますが、すべて接続されています。例:

どこ 。はデッド スペースであり、o はマークされたピクセルです。「バイナリ」生成のみを気にします-ピクセルはオンまたはオフです。たとえば、これらは架空のケチャップの塊、架空のバクテリア、その他の有機物質のように見えます。

どのようなアルゴリズムでこれを達成できますか? 私は本当に途方に暮れています

0 投票する
1 に答える
180 参照

algorithm - ランタイム頂点生成

アルゴリズムを使用して世界が生成される無限の世界を作成することは可能ですか? XNA は実行時の頂点の読み込みをサポートしていますか?

0 投票する
2 に答える
3518 参照

opengl - 手続き型惑星、高さマップ、テクスチャ

私は現在、OpenGL 手続き型惑星ジェネレーターに取り組んでいます。プレイヤーが惑星の表面に降りることができない宇宙 RPG に使用したいと考えているため、ROAM 関連は無視しました。現時点では、ここに示すように、VBO を使用して立方体を描画し、球体にマッピングしています。

私はほとんどのフラクタル高さマップ生成手法に精通しており、独自のバージョンの中点ディスプレイスメントを既に実装しています (この場合はあまり役に立ちません)。

私の質問は、高さマップを手続き的に生成する最良の方法は何ですか。タイル可能な高さマップ/テクスチャを作成できるlibnoiseを見てきましたが、私が見る限り、次のようなネットを生成する必要があります:

これ

タイリングを明白に残します。

誰かが私に最善のルートを教えてくれませんか?

任意の入力をいただければ幸いです。

ありがとう、

ヘンリー。

0 投票する
1 に答える
923 参照

opengl - キューブマップを球にマッピングする際の問題

私は現在、手続き型の惑星生成ツールを作成しようとしています。私は次のように立方体を球にマッピングすることから始めました:

代替テキスト

次に、3D Perlianノイズを使用して、Libnoiseをハイトマップキューブに使用しています。シームレスなcubmapを生成することができます。私はこれをフォトショップでチェックしました。ネットに収まるようにハイトマップ画像を回転させる必要がありましたが、正しい向きだと思います。

球にマップする前と後の座標のperlin値を取得しようとしましたが、エッジを一致させることができません。

代替テキスト

現在、-0.8〜 + 0.8のジオメトリを作成してから、0.2*ハイトマップのパーセンテージを追加しています。

高さマップデータを誤って使用しているか、高さマップの方向が正しくありません(両方の少しであると思われます)。

0 投票する
4 に答える
6380 参照

opengl - 地形の 3D プロシージャル生成またはフラクタル地形生成に関する優れたリソースを持っている人はいますか?

タイトル参照。どんな助けでも大歓迎です!

0 投票する
1 に答える
3891 参照

random - 倉庫番ゲームのレベルをランダムに生成しますか?

私は倉庫番スタイルのゲームを作成しています (つまり、倉庫番とまったく同じではないため、既存のレベルを使用できません)。ランダムなレベルを作成して、プレーヤーがプレイを続け、常にレベルを試すことができるようにしたいと考えています。コンピューターにレベルを自動または半自動で生成させる方法はありますか (半自動とは、おそらく最初のマップを与えることができますが、クレートの位置はありません)。

私が思いついたアイデアの 1 つは、マップをランダムに生成し、木枠を最終状態 (つまり十字の上) に配置してから、ゲーム キャラクターに引っ張られているかのように木枠をランダムに移動することでした。これにより、レベルが解決可能であることが保証されます。ただし、主な問題は、レベルが簡単/難しいか、面白い/退屈かをどのように知るかということでしょうか? たとえば、倉庫番は NP 困難であるため、マシンに簡単な解決策があるかどうかを確認するように現実的に要求することはできませんでした。

人間の専門家と競合するランダムなレベルを作成するのは難しいことはわかっていますが、まともなものを探しているだけです.

編集: ちなみに、50x50 レベルではなく 5x5 レベルなど、小さくても興味深い倉庫番のようなレベルを生成することにもっと興味があります。これにより、物事がより計算的に実現可能になる可能性があります。

0 投票する
2 に答える
21885 参照

algorithm - 2Dタイルマップの生成

私は2Dタイルエンジンを開発しており、現在、マップ生成アルゴリズムに取り組んでいます。

私は通常、次のような単純なハイトマップ生成に関係する基本的なものを試しました

  • 丘の世代
  • パーリンノイズ
  • ダイヤモンドスクエア

しかし、私はいつも同じ問題を抱えています。この種のアルゴリズムは、高さコンポーネントもあるタイルマップを処理する場合に適しているようですが、これは私の場合ではありません。

私は基本的に草、海、砂漠などのスプライトを持っていますが、生成された高さに応じてマップ内に配置するべきではなく、次のようなものです。

  • すべては海から始まります
  • 島はマップの中央に配置されます(これは、私が試したアルゴリズムがほとんど失敗した場所です)
  • 砂漠が生成されます(それらは周りのランダムなスポットのようになります)
  • 山と丘のチェーンがスポーンされます(ヘビのようになります)

どのようなアプローチを試すべきですか?

必要なことを実行するための特殊なアルゴリズムを開発することで、サブコンポーネントの問題(砂漠、丘、山など)を解決しました(たとえば、山はある地点から始まり、曲がる可能性のある方向をたどります)が、基本的な島(パンゲアまたは何度ものサイズにカスタマイズ可能)。

私が探しているものは、文明アルゴリズムのようなものです。

代替テキスト