Du bist nicht angemeldet.

Werbeanzeige

1

23.02.2011, 23:18

Zufällig plausible Welt generieren?

Ich plane eine Simulation und bräuchte für diese einen Weltgenerator.

Die Welt soll "blockartig" sein, also beispielsweise ein Array mit 200x200x40 Feldern.


Spiele wie Minecraft, Dwarf Fortress, Civilisation, ja sogar alte Spiele wie Sim Earth etc. können wirklich bemerkenswerte Welten generieren, mit verschiedenen Klimazonen, Flüssen, Bergen, Tälern, Wüsten, Kliffen, Seen.... Die dann auch noch mit Pflanzen und Tieren bevölkert wird...



Meine Versuche einen Algorithmus zur Welt generierung zu erstellen waren sehr mäßig (=unbrauchbar, es entstanden Pyramiden und zerstückelte Landstricke :P ).

Ich vermute allerdings das mit relativ simplen Algorithmen möglich ist eine plausible Welt zu generieren.

Hier zur veranschaulichung mal ein Bild von einer Minecraft Welt


(Link)

dot

Supermoderator

Beiträge: 9 848

Wohnort: Graz

  • Private Nachricht senden

xxendlessxx

Treue Seele

Beiträge: 228

Wohnort: Bad Schussenried

Beruf: Full Stack Developer

  • Private Nachricht senden

3

24.02.2011, 01:23

Die MC Wiki wäre eine gute Anlaufstelle. http://www.minecraftwiki.net/wiki/Biomes Vielleicht findest ja etwas was dir helfen kann.

Schorsch

Supermoderator

Beiträge: 5 182

Wohnort: Wickede

Beruf: Student

  • Private Nachricht senden

4

24.02.2011, 13:31

Bei den Roguelikes kannst du auch mal gucken. Ist zwar normal alles 2D, aber da liegt ja irgendwie mit der Anfang. Da findest du viele gute Ansätze, von denen sich bestimmt einige anpassen lassen würden.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

5

24.02.2011, 15:45

Die MC Wiki wäre eine gute Anlaufstelle. http://www.minecraftwiki.net/wiki/Biomes Vielleicht findest ja etwas was dir helfen kann.


Die kenne ich, aber da erfährt man nur Infos über die fertige Welt, nicht wie diese generiert wird.

Zitat



Hab nur einen kurzen Blick darauf geworfen aber das sieht gut aus. Ich schau es mir heute Abend genauer an :P.

Zitat

Bei den Roguelikes kannst du auch mal gucken. Ist zwar normal alles 2D, aber da liegt ja irgendwie mit der Anfang. Da findest du viele gute Ansätze, von denen sich bestimmt einige anpassen lassen würden.


Ob 3D oder 2D macht keinen so großen Unterschied, das ist ja nur die Darstellung. Ob ich nun eine 2D Landschaft mit Bergen und Tälern habe oder eine 3D Landschaft, der Ursprung ist ein Array mit Höhenwerten und anderen Eigenschaften...

Dwarf Fortress spielt man bspw. in einer 3D Welt, dargestellt wird diese allerdings in 2D Grafik über einen Querschnitt durch die Landschaft. (Was das Spiel auch so unübersichtlich macht ^^).


Die Frage wäre nur wie diese Welten zustande kommen...

NachoMan

Community-Fossil

Beiträge: 3 905

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

6

24.02.2011, 17:45

Ob 3D oder 2D macht keinen so großen Unterschied, das ist ja nur die Darstellung.

dem muss ich wiedersprechen. es ist ein unterschied ob du nur eine heightmap hast oder ein 3d array. immerhin kann man mit einer heightmap keine tunnel oder "brücken" darstellen, also auch nicht generieren.

mich würde es auch sehr interessieren soetwas zu entwickeln. vllt komm ich ja mal dazu.
die mc wiki gibt vielleicht keine echten tipps aber du könntest du ein bisschen was abschauen ;)
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

7

24.02.2011, 18:54

Stimmt natürlich :P.

Ich hab nur an Dwarf Fortress gedacht was trotz 2d Grafik ein 3D Array hat ^^...

Ein 2D Arrays ist für das was ich vorhabe im Grunde ausreichend.

Ich lese mir die Links gerade durch und denke das ich damit was anfangen kann :P.

daG

Treue Seele

Beiträge: 130

Wohnort: Hamburg

  • Private Nachricht senden

8

24.02.2011, 19:31

Ich glaub Perlin Noise ist da das Stichwort.

CBenni::O

1x Contest-Sieger

Beiträge: 1 146

Wohnort: Stuttgart

  • Private Nachricht senden

9

24.02.2011, 20:03

In der Tat.
Perlin noise wird afaik auch von Minecraft verwendet, um die welten zu generieren

Wobei das im Fall von MC glaube ich so ablief, dass erst eine heightmap erstellt wird und Höhlen nachträglich hinzugefügt werden - es kann aber auch sein, dass ich mich da irre.

Aber es wäre auf jeden Fall ein Ansatz.

mfg CBenni::O
Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.
42!
Aufräumen kann jeder, nur das Genie überblickt das Chaos!
Metal will never die!
1. Sppro Gamecontest - mein Beitrag

dot

Supermoderator

Beiträge: 9 848

Wohnort: Graz

  • Private Nachricht senden

10

24.02.2011, 20:11

Wenn du mich fragst wäre es für ein Spiel wie Minecraft das bei weitem Naheliegendste mit einem 3D Array zu arbeiten. Eine Heightmap ist dafür imo total ungeeignet.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »dot« (24.02.2011, 21:05)


Werbeanzeige