Spieldesign - Random geo-strategic map: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 3: | Zeile 3: | ||
Steps: | Steps: | ||
| − | # Generate uniform random points on the sphere | + | # Generate uniform random points on the sphere. |
# Run [http://en.wikipedia.org/wiki/Lloyd%27s_algorithm Lloyd's algorithm] on it about 30-50 times with the right metric (see: [http://en.wikipedia.org/wiki/Great-circle_distance great circle distance], [http://en.wikipedia.org/wiki/Spherical_trigonometry#Area_and_spherical_excess area of triangles and polygons on a sphere], [http://stackoverflow.com/questions/19897187/locating-the-centroid-center-of-mass-of-spherical-polygons getting the centroid of a polygon on a sphere]). | # Run [http://en.wikipedia.org/wiki/Lloyd%27s_algorithm Lloyd's algorithm] on it about 30-50 times with the right metric (see: [http://en.wikipedia.org/wiki/Great-circle_distance great circle distance], [http://en.wikipedia.org/wiki/Spherical_trigonometry#Area_and_spherical_excess area of triangles and polygons on a sphere], [http://stackoverflow.com/questions/19897187/locating-the-centroid-center-of-mass-of-spherical-polygons getting the centroid of a polygon on a sphere]). | ||
| + | # Generate the Voronoi triangulation for the point set; these are the areas. | ||
| + | |||
| + | For some non-uniformity, possible algorithm: | ||
| + | |||
| + | # Randomise parts of the boundaries as per the [http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/ polygon map generation article]. | ||
| + | |||
| + | ToDo: | ||
| + | |||
| + | # Random heighmap generation on the sphere (procedural planet?) | ||
| + | # Moisture | ||
| + | # Temperature | ||
| + | # Evapotranspiration | ||
| + | # Decide on biomes based on that | ||
| + | # Rivers (& lakes) based on precipitation | ||
| + | |||
| + | Idea: Sub-biomes per area? Possibly too much work and too little effect to bother | ||
| + | |||
| + | Requirenments: Has to be able to generate about 100k areas (that's 5100 km² per area on Earth-sized planet, about the size of Brunei. Russia = 3217 areas, EU = 859, Germany = 68) | ||
Aktuelle Version vom 8. Juli 2014, 13:41 Uhr
Generation of a random geo-strategic map with a given amount of areas and average connectivity approaching six for large amount of areas (randomised hex placement).
Steps:
- Generate uniform random points on the sphere.
- Run Lloyd's algorithm on it about 30-50 times with the right metric (see: great circle distance, area of triangles and polygons on a sphere, getting the centroid of a polygon on a sphere).
- Generate the Voronoi triangulation for the point set; these are the areas.
For some non-uniformity, possible algorithm:
- Randomise parts of the boundaries as per the polygon map generation article.
ToDo:
- Random heighmap generation on the sphere (procedural planet?)
- Moisture
- Temperature
- Evapotranspiration
- Decide on biomes based on that
- Rivers (& lakes) based on precipitation
Idea: Sub-biomes per area? Possibly too much work and too little effect to bother
Requirenments: Has to be able to generate about 100k areas (that's 5100 km² per area on Earth-sized planet, about the size of Brunei. Russia = 3217 areas, EU = 859, Germany = 68)