![image][1]
При заполнении области объектами (например, комнатами в подземелье) в случайном порядке вы рискуете тем, что всё будет _слишком_ случайным. Результат может оказаться абсолютно бесполезным хаосом. В этом туториале я покажу, как использовать для решения этой проблемы _двоичное разбиение пространства (Binary Space Partitioning, BSP)_.
Я подробно и по этапам расскажу об использовании BSP для создания простой двухмерной карты, к примеру, схемы подземелья. Я покажу, как создать простой объект `Leaf`, который мы используем для разделения области на маленькие сегменты. Затем мы займёмся генерированием в каждом `Leaf` случайной комнаты. И, наконец, узнаем, как соединить все комнаты коридорами.
Примечание: хоть код примеров и написан на AS3, концепцию можно использовать практически в любом другом языке.
[Читать дальше →][2]
[1]:
https://habrastorage.org/getpro/habr/post_images/663/1d9/446/6631d9446ce8a0ea6fc83a8fbd34c3b3.jpg
[2]:
https://habrahabr.ru/post/332832/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut