Prozeduraler Sternfeldgenerator

15

Kennt jemand einen Code zum prozeduralen Erzeugen von Sternfeldern?

Idealerweise möchte ich, dass es physikbasiert ist, damit ich realistische Planeten und Monde haben kann. Am besten in C ++, Open Source und mit Ogre3d.

Ich habe keine Angst, etwas aus einer Universitätszeitung zu codieren, wenn nichts verfügbar ist.

Jay
quelle
2
Was meinst du mit "Feld"? Ein Sternhaufen, eine Galaxie, ein Galaxienhaufen? Nur ein Stern mit einigen Planeten?
Maik Semder
2
Ich möchte eine Skybox für ein Spiel erstellen. Ich möchte, dass sich der Nachthimmel etwas realistischer verhält. Da sich Sterne nicht ändern, können Sie aus einem Sternenkatalog (oder einfach nur zufällig) ein statisches Skybox-Bild für sie erstellen. Die Planeten bewegen sich langsam, sodass Sie ihre Positionen regelmäßig aktualisieren können. Ein Mond würde sich stark verändern, sodass Sie ihn prozedural häufiger erzeugen würden. Der Mond würde auch eine Bildverarbeitung benötigen, da er viel größer als nur ein Pixel ist.
Jay
1
Dies hat eine Menge
Jay
2
Vieles, was Sie brauchen, wird von Ihrer Reisegeschwindigkeit abhängen. Sind Sie sub-c oder superluminal, ist dies eine reine Skybox oder fliegen Sie durch ganze Galaxien? Was ist deine Waage?
Patrick Hughes
1
Ich muss keine relativistischen Effekte emulieren. Nichts wird sich so schnell bewegen. Die osgEphemeris für Flugsimulatoren sieht aus wie ein großartiger Ausgangspunkt
Jay

Antworten:

11

Ich glaube, dass die Erzeugung eines Sternfeldes (große Reichweite) und von Planeten und Monden ("kurze Reichweite") zwei verschiedene Schichten umfassen sollte. Was das Sternenfeld betrifft, habe ich festgestellt, dass dies für mein Spiel nützlich ist : http://alexcpeterson.com/spacescape . Damit können Sie Ihr langreichweitiges, statisches Sternfeld schützen. Es ist in C ++ und Open Source geschrieben.

Wie für die "Short Range" Sachen. Ich habe einige Quellen für Sonnensystemsimulatoren gefunden, aber von meinem flachen Blick aus sehen sie nicht sehr allgemein aus, wenn Sie ein anderes Sonnensystem als unser eigenes erstellen möchten. Ich habe die Links am Ende gesetzt.

In der Realität sollte dies keine allzu schwierige Aufgabe sein, um ein generisches System für Planeten zu entwickeln. Studieren Sie Ihren Kepler und Sie können einige gute Schätzungen der Planetenpositionen erhalten. http://en.wikipedia.org/wiki/Kepler%27s_laws_of_planetary_motion . Wahrscheinlich bleiben Sie einfach bei einfachen nicht-exzentrischen Bahnen, um zu beginnen :)

Hier sind einige Links für Sonnensystemsimulatoren, die ich gefunden habe.

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

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

MichaelHouse
quelle
Ihr Tool sieht sehr hilfreich aus. Vielen Dank für das Teilen
Jay
3
Nicht mein Werkzeug, ich benutze es einfach :) Der gesamte Kredit für das Spacescape-Tool geht an Alex C Peterson
MichaelHouse