Ich baue eine Insel. Ich benutze die klassische Höhenkarten-Lösung: Mit einer Hügelbildungsfunktion, die die Ecken der Karte vermeidet, mache ich Höhenmeter. Dann gibt mir Perlin-Lärm einige klimatische Variablen, um mit den Biomen umzugehen. Jetzt stehe ich zwei Herausforderungen gegenüber, die in gewisser Weise miteinander verbunden sind:
In der Zwergenfestung ist einer der wichtigsten Aspekte der Weltgeneration, wie das Spiel Gebiete zu "kennen" und ihnen Namen zu geben scheint, obwohl es sich nicht um rechteckige Formen handelt. Ich möchte in der Lage sein, meine Wälder, meine Flüsse, meine Hügel zu "erkennen". Irgendeine Idee, mit welcher Art von Algorithmus ich meine Karte scannen und ihre Gebiete interpretieren könnte? Und wie würdest du das aufbewahren? Ich verwende ein einfaches C ++ - Diagramm, das aus einem Vektor des Vektors "Kacheln Objekt" besteht.
Diese Insel sollte in politische Gebiete unterteilt werden, nicht nur in rein natürliche Regionen. Ich könnte Berge und Flüsse benutzen, um "natürliche Grenzen" zu ziehen, aber meine prozedural erzeugte Karte garantiert nicht, dass ich schöne "Enklaven" haben werde, die ein Königreich bilden würden. Ich könnte feststellen, dass ich gigantische "bandförmige" politische Gebiete habe, die von Mikrokönigreichen umgeben sind. Eine andere Möglichkeit wäre, geeignete Gebiete für eine Stadt oder ein Schloss zu suchen. Dann "wachse" ein politisches Gebiet darum herum. Aber auch hier möchte ich einige bekannte Algorithmen haben, bevor ich versuche, meine eigenen zu entwickeln.
Diese Frage könnte als etwas zu vage interpretiert werden. Eine Möglichkeit, sie umzuformulieren, wäre: Wie kann eine prozedural erzeugte Welt (ohne Änderungen!) In Bereiche aufgeteilt werden, die für das Spiel geeignet sind? Vielen Dank im Voraus für Ihre Hilfe.