Найти в Дзене
Vlad Koltsov

Разработка шутера ч.4.2 - Генерация уровней как в Soul Knight

Вторая часть генерации уровней.
Постараюсь коротко объяснить как все это дело работает. В общем начнем. А начинается все с одной комнаты с четырьмя возможными позициями спавна комнаты, красные ромбики - это те самые позиции. (Второй скрин)
После спавна первой комнаты, позиция на которой появилась комната - удаляется с листа и деактивируется. А новые позиции заносятся в лист и уже с ними спавнится

Вторая часть генерации уровней.

Постараюсь коротко объяснить как все это дело работает. В общем начнем. А начинается все с одной комнаты с четырьмя возможными позициями спавна комнаты, красные ромбики - это те самые позиции. (Второй скрин)

-2

После спавна первой комнаты, позиция на которой появилась комната - удаляется с листа и деактивируется. А новые позиции заносятся в лист и уже с ними спавнится новая комната. Так можно сделать бесконечно комнат, пока не сломается Юнити конечно же.

-3

Дальше комнаты нужно соединить мостами, но, так как, комнаты разных размеров, нужно высчитывать размер и положение моста. Для это я сделал на краях комнат объекты. При спавне комнаты, такой объект активируется - детектит такой же объект напротив и после того как генерирует комнату деактивируется.

Чтобы посчитать размер комнаты нужно от позиции второго объекта отнять позицию первого. А позиция равна центру между этими объектами.