手続き型スターフィールドジェネレーター


15

スターフィールドを手続き的に生成するコードを知っている人はいますか?

理想的には、物理​​学に基づいて、現実的な惑星と月を手に入れることができます。最良の方法は、C ++、オープンソース、およびOgre3dで動作することです。

利用できるものがなければ、大学の論文から何かをコーディングすることを恐れません。


2
「フィールド」とはどういう意味ですか?星団、銀河、銀河団?いくつかの惑星を持つ唯一の星?
マイクセンダー

2
ゲームのスカイボックスを作成したいです。夜空がもう少しリアルに振る舞うようにしたい。星は変化しないため、星カタログから(またはランダムに)静的なスカイボックス画像を生成できます。惑星はゆっくりと移動するため、定期的に位置を手続き的に更新できます。月は大きく変化するので、手続き的に頻繁に生成します。月はピクセルよりもはるかに大きいため、画像処理も必要になります。
ジェイ

1
:これは良い材料の負荷があるvterrain.org/Atmosphere
ジェイ・

2
必要なものの多くは、移動速度に基づいて決まります。サブCかスーパールミナールか、この純粋なスカイボックスですか、それとも銀河全体を飛んでいますか?あなたの規模は?
パトリックヒューズ

1
相対論的な効果をエミュレートする必要はありません。そんなに速く動くものはありません。フライトシミュレーターのosgEphemerisは素晴らしい出発点のように見えます
ジェイ

回答:


11

スターフィールド(長距離)と惑星と月(「短距離」)の作成は、2つの異なるレイヤーである必要があると思います。スターフィールドについては、これがゲームに役立つことがわかりました:http : //alexcpeterson.com/spacescape。それはあなたの長距離の静的な星野の世話をすることができます。C ++とオープンソースで書かれています。

「短距離」のものに関しては。太陽系シミュレーターのソースをいくつか見つけましたが、私が浅い目から見ると、私たちの太陽系とは異なる太陽系を作成したい場合、それらはあまり一般的ではありません。最後にリンクを配置します。

現実には、これは惑星の一般的なシステムを作成するのにそれほど難しくないはずです。ケプラーについて調べてみると、惑星の位置を適切に推定できます。http://en.wikipedia.org/wiki/Kepler%27s_laws_of_planetary_motion。おそらく、単純な非偏心軌道に固執するだけで開始できます:)

ここに私が見つけた太陽系シミュレーターへのリンクがあります。

http://astro.berkeley.edu/~dperley/programs/ssms.html

http://code.google.com/p/solar-system-cpp/


あなたのツールは本当に役に立ちそうです。共有していただきありがとうございます
ジェイ

3
私のツールは、私はちょうどそれを使用しない:)すべての信用をSpacescapeツールのために行くアレックス・C・ピーターソン
MichaelHouse
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.