1 Punkte von GN⁺ 2024-07-30 | 1 Kommentare | Auf WhatsApp teilen

Weltsimulation auf der GPU

4 Milliarden Jahre in 4 Minuten

  • Dieser Artikel behandelt die Implementierung einer prozeduralen Erdsimulation, die als GLSL-Fragment-Shader geschrieben wurde
  • Die gesamte Geschichte eines erdähnlichen Planeten wird in wenigen Minuten simuliert und mit 60 Bildern pro Sekunde aktualisiert

Urplanet

  • Die Geschichte beginnt vor 4,5 Milliarden Jahren als Klumpen aus Lava
  • Die frühe Erde war aufgrund von Asteroideneinschlägen ein roter und heißer Urplanet
  • Die Geländehöhe wird mithilfe einer prozedural erzeugten Terrain-Map berechnet
  • Es werden Einschlagskrater von Asteroiden in verschiedenen Größen erzeugt, aus denen die Geländehöhe bestimmt wird
  • Asteroidenkrater werden in einem 3D-Raster erzeugt und mit Hash-Funktionen unregelmäßig gemacht
  • Die schließlich erzeugte Heightmap stellt das Aussehen der frühen Erde nach

Plattentektonik

  • Zur Bildung von Gebirgen, Tiefseegräben und kontinentalen Landformen wird ein Modell der Plattentektonik verwendet
  • Seed-Positionen der Platten werden mit Anfangsgeschwindigkeiten zufällig erzeugt, und die Platten wachsen im Lauf der Zeit
  • Kommt es an den Plattengrenzen zu Kollisionen, steigt die Geländehöhe an
  • Diese Kollisionen breiten sich mithilfe eines thermischen Erosionsmodells auf umliegende Pixel aus

Hydraulische Erosion

  • Das raue Aussehen natürlicher Landschaften wird vor allem durch die Bildung von Flusseinzugsgebieten bestimmt
  • Es wird ein Modell verwendet, mit dem sich Flüsse auch auf niedrig aufgelösten Terrain-Maps simulieren lassen
  • Jedes Pixel prüft die acht benachbarten Pixel, und Wasser fließt in Richtung des stärksten Gefälles
  • Die Erosion wird durch das Stream-Power-Gesetz angetrieben
  • Durch das Zusammenspiel von Wasserfluss und Erosion entstehen natürliche Flusseinzugsgebiete

Globales Klima

  • Die Simulation des Klimasystems basiert auf einer Karte des mittleren Luftdrucks auf Meereshöhe (MSLP)
  • Die MSLP-Karte wird von der Lage von Land und Ozeanen sowie vom Breitengrad beeinflusst
  • Die MSLP-Karte wird so angepasst, dass sich Klimamuster mit den Jahreszeiten verändern
  • Auf Basis von MSLP werden Wind und Temperatur erzeugt
  • Wind bewegt sich von Hochdruck- zu Tiefdruckgebieten, wobei der Coriolis-Effekt berücksichtigt wird
  • Niederschlag wird über das Windvektorfeld vom Ozean auf das Land transportiert

Leben

  • Das Klima beeinflusst die Verteilung des Lebens auf dem Planeten
  • Niederschlagsmuster und Temperaturänderungen bestimmen die Wachstumsrate von Pflanzen
  • Pflanzenfresser und Raubtiere wandern mit den Jahreszeiten
  • Diese dynamischen Veränderungen werden mit einem Lotka-Volterra-Diffusionsmodell simuliert

Die Menschheit

  • Nach dem Auftakt der frühen Erde kolonisiert die Menschheit die Oberfläche des Planeten
  • Sie verbrennt fossile Brennstoffe und setzt Kohlenstoff in die Atmosphäre frei
  • Über mehrere Jahrhunderte verbraucht die Menschheit sämtliche Ressourcen an fossilen Brennstoffen und setzt 5 Billionen Tonnen Kohlenstoff in die Atmosphäre frei
  • Dadurch verstärkt sich der Treibhauseffekt, und die globale Durchschnittstemperatur der Erde steigt um etwa 10 Grad
  • Große Regionen rund um den Äquator werden wegen extremer Temperaturen unbewohnbar

Zusammenfassung von GN⁺

  • Dieser Artikel erläutert den Implementierungsprozess einer prozeduralen Erdsimulation im Detail
  • Mit GLSL-Fragment-Shadern werden Terrain, Plattentektonik, hydraulische Erosion, Klima, Leben und mehr simuliert
  • Durch die Simulation der Auswirkungen menschlicher Aktivitäten auf die Umwelt der Erde wird ein Warnsignal gesetzt
  • Als ähnliche Projekte werden "SimEarth" und "Universe Sandbox" empfohlen

1 Kommentare

 
GN⁺ 2024-07-30
Hacker-News-Kommentare
  • Die Kurzgeschichte "I don't know, Timmy, being God is a big responsibility" behandelt das Thema Weltsimulation
  • Die Annahme, dass eine Zivilisation mit nächtlicher Beleuchtung alle fossilen Brennstoffe verbrennt und dadurch zur Wüstenbildung führt, basiert nur auf der Entwicklung unserer eigenen Zivilisation
    • Es gibt auch andere Möglichkeiten, etwa einen Atomkrieg, die Entwicklung sauberer Fusion, Pandemien oder eine Invasion durch außerirdische Planeten
    • Ein Temperaturanstieg wird mit Trockenheit gleichgesetzt, und die Auswirkungen von zusätzlichem CO2 auf Pflanzen werden nicht berücksichtigt
  • 1996/1997 wurde ein CD-ROM-Spiel entwickelt, das Plattentektonik, Temperatur, Höhe und Niederschlag simuliert
    • Die Entwicklung von Computing-Hardware und Software in den vergangenen 28 Jahren ist erstaunlich
  • Das Hard-SF-Buch "Permutation City" ist eng mit diesem Thema verbunden
    • Beim Lesen des Titels dieses Artikels fühlte es sich an, als würde ich träumen
  • An der Universität wurden in einem Kurs zur Analyse von Energiepolitik mit dem am MIT entwickelten EPPA-Modell Simulationen durchgeführt, etwa dazu, die Kosten für Energiespeicherung um den Faktor 10 zu senken
    • Das hat großen Spaß gemacht, aber ich konnte bei der Arbeit nichts Ähnliches finden
  • Es wird erwähnt, dass in der Simulation einige Details ausgelassen wurden
  • Es wird infrage gestellt, warum nur Fragment-Shader verwendet werden
    • Mit einem Vertex-Shader für die Heightmap könnte man auch bis zur Oberfläche hineinzoomen
  • Das Shadertoy-Beispiel läuft auf der Seite mit 0,6 FPS, auf der Shadertoy-Website selbst aber problemlos mit 60 FPS
  • Man fragt sich gelegentlich, wie es wohl wäre, in einem simulierten Universum zu leben
  • Die Musik, die das gesamte Video begleitet, kam mir bekannt vor, aber ich wusste nicht, woher
    • Möglicherweise handelt es sich um von KI generierte Musik