Skip to content

Muhv16/MapRegionizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MapRegionizer

MapRegionizer is a tool for generating strategic maps from a simple mask that defines land and water areas.

The project is designed as a step-by-step procedural map generation pipeline: from tectonics and terrain to climate, rivers, and regional subdivision.

⚠️ The project is currently in an early stage of development. The API, configuration format, and individual generation stages may change.

Features

The following generation stages are currently implemented:

  • Planetary tectonics generation: tectonic plates, crust types, and related base structures.
  • Surface generation: terrain and river network generation.
  • Climate generation.
  • Region generation.

Usage

MapRegionizer can be used in several ways.

1. As a library for .NET applications

This option provides the most flexibility for customizing the generation pipeline. You can disable individual stages, change their order, or add custom stages.

See the documentation: docs/generation-pipeline.md.

2. Through the CLI

The CLI pipeline is intended for using the generator from external applications, scripts, and automated workflows.

docs/cli-pipeline.md

3. Through the desktop client

A desktop client based on Avalonia is available for manual work with the generator.

The client source code is located in AvaloniaRegionizer.

Example

An example of practical use of the map generator in a web application:

https://euromeme.ru/map

Documentation

Roadmap

  • Improve repository structure and documentation for more convenient and efficient agent-assisted development.
  • Improve tectonics generation and orogenic province generation to produce more interesting terrain.
  • Add mineral deposit generation.
  • Add optional terrain-aware region generation.
  • Add brushes for manual terrain editing and river creation.
  • Add volcano generation and areas of increased seismic activity.
  • Add a satellite-like presentational render.
  • Add stylized renders.
  • Add tile export.
  • Add tests for individual generation stages.

Project Status

The project is under active development and does not yet provide a stable public API. For production-like scenarios, it is recommended to pin a specific version or commit.

License

This project is licensed under the MIT License. See LICENSE.txt for details.

Gallery

Mask Mask example Climate Climate render example Elevation Elevation render example (seed 42)


MapRegionizer — программа для генерации стратегических карт на основе простой маски, задающей разделение на сушу и водную поверхность.

Проект предназначен для поэтапной генерации процедурных карт: от тектоники и рельефа до климата, рек и регионального деления.

⚠️ Проект находится на ранней стадии разработки. API, формат конфигурации и отдельные стадии генерации могут меняться.

Возможности

На текущий момент реализованы следующие стадии генерации:

  • Генерация тектоники планеты: тектонические плиты, типы коры и связанные с ними базовые структуры.
  • Генерация поверхности: рельеф и речная сеть.
  • Генерация климата.
  • Генерация регионов.

Использование

MapRegionizer можно использовать несколькими способами.

1. Как библиотеку для .NET-приложений

Этот вариант предоставляет наибольшие возможности для кастомизации pipeline генерации: можно отключать отдельные стадии, менять их порядок или добавлять собственные этапы.

Подробнее см. в документации: docs/generation-pipeline.md.

2. Через CLI

CLI-пайплайн подходит для использования генератора из сторонних приложений, скриптов и автоматизированных сценариев.

docs/cli-pipeline.md

3. Через десктопный клиент

Для ручной работы с генератором предусмотрен десктопный клиент на Avalonia.

Исходный код клиента находится в каталоге AvaloniaRegionizer.

Пример использования

Пример практического использования генератора карт в веб-приложении:

https://euromeme.ru/map

Документация

Планы развития

  • Оформить репозиторий и документацию для более удобной и эффективной агентской разработки.
  • Доработать генерацию тектоники и провинций орогенеза для получения более интересного рельефа.
  • Добавить генерацию месторождений полезных ископаемых.
  • Добавить опциональную адаптацию регионов к рельефу поверхности.
  • Добавить кисти для ручного редактирования рельефа и речной сети.
  • Добавить генерацию вулканов и зон повышенной сейсмической активности.
  • Добавить satellite-like render для презентационного отображения карт.
  • Добавить стилизованные рендеры.
  • Добавить экспорт тайлов.
  • Добавить тесты для отдельных стадий генерации.

Статус проекта

Проект активно развивается и пока не претендует на стабильность публичного API. Перед использованием рекомендуется фиксировать конкретную версию или commit.

Лицензия

Проект распространяется под лицензией MIT. Подробнее см. LICENSE.txt.

About

Procedural strategic map generator with tectonics, terrain, climate, hydrology, and region generation.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages