0

プロジェクトでは、原点から全方向にランダムに生成される中心の「故郷」を中心に、3D空間で惑星を作成しています。

手続き型生成とパーリンノイズを見てきましたが、それらを適用できる適切な方法を見つけることができませんでしたが、あらゆる種類のランダム化された生成は初めてです。

原点を中心とした、できればシードに基づく3Dポイント生成のアルゴリズムの適切な開始点(同じシードが同じユニバースを作成するため)。

ありがとう!

4

2 に答える 2

1

単一のシードでこれを行うために特定のアルゴリズムを試すのではなく、異なる乱数のセットを使用してみてください。

first one is 1-360 is the rotation around the y axis
second one is 1-180 is the deviation from the y axis (wobble)
third one is 1-<really big  number> is the distance from your centre point (homeworld)
fourth (optional) one is to randomize the radius of the planet
fifth (optional) is to randomize the colour of the object

惑星をプロットするには、原点(ホームワールド)から3D空間(x、y、z)の位置を計算するための単純な三角法です。

そして、それぞれのシード値が同じである限り、非常に大きな惑星空間を生成することができます。

単一のシードでこれを実行する場合は、そのシードを使用して、後続のすべての乱数ジェネレーターの「ランダム」シード番号を生成します。

于 2012-03-05T08:59:43.723 に答える
0

このページをロードするのに長い時間がかかったのですが、まだ表示されていません。

四面体から始めて、指定された回数の反復で、

  • 三角形の面をランダムに選択します
    • そのベースに建てられた新しい四面体で顔を置き換えます。

完全に均一な乱数分布では、これは球に近似するはずです。決定論的PRNGを使用すると、同じ初期シードを使用して結果を再現できるはずです。

于 2015-03-15T07:45:17.600 に答える