denismaster/YetAnotherGame

Реализовать генерацию базового лабиринта

Opened this issue · 2 comments

На данный момент наша карта достаточно пустынная. Следует добавить генерацию простейшего лабиринта, на нашей карте. Либо сделать саму карту в виде некоего лабиринта

с Никитой смотрели статейки на генерацию лабиринтов
и один вариант натолкнул на понятную и очень простую идею, как можно это сделать:
генерируем матрицу пусть 5 на 5 (вершин, точек)
вершины могут соединяться с соседними, образуя стену (при наличии условия, например обе вершины имеют флаг = true)
+
инстанциируем стену между двумя точками
=>
profit, лабиринт готов

чтобы избежать вырожденных случаев можно добавлять еще условия:

  • наличие входа - например если все боковые вершины соединены стенами (т.е. флаг = true), принудительно ставить там false
  • не давать образовываться квадратам, в которые нельзя зайти
  • можно уменьшать вероятность возникновения стен по мере углубления в лабиринт