Алгоритм генерации миров в современных песочницах устроен на основе процедурной генерации. ya.ru Для создания уникальных миров используются сиды (зёрна) — код, созданный генератором случайных чисел. ya.ru Этот код «скармливают» алгоритму, который затем выдаёт сгенерированный мир. ya.ru
Некоторые элементы алгоритма:
- Создание сида. media-xyz.com ya.ru Это значение, которое закладывается в алгоритмы генератора при создании мира. media-xyz.com Чаще всего оно представлено в виде псевдослучайного ряда цифр. media-xyz.com
- Сгенерирование основы для уровня. media-xyz.com Для этого используются, например, BSP-деревья (Binary Space Partitioning) — алгоритм рекурсивного разделения областей на две части. na-journal.ru
- Размещение объектов. media-xyz.com После генерации основы набор специфических алгоритмов и шаблонов случайным образом раскидывает по миру объекты — деревья, крепости, данжи, места спауна мобов. media-xyz.com
Набор правил определяется в том числе и биомом, в котором размещаются объекты. media-xyz.com Например, берёзы никогда не появятся в саванне, а в пустыне не пойдёт дождь. media-xyz.com