Процедурная генерация DEV BLOG

Dobrý Den, сейчас я Вам покажу пример процедурной генерации карты, на Unreal Engine 4.
Функция расчета рандомных точек на игровом поле:

Давайте подробнее разберем функцию For Loop.

Firs Index — отвечает за начальную точку отсчета цикла. For Loop — цикл, который будет выполниться от First Index до Last Index каждый кадр. Last Index — Грубо говоря сколько раз надо выполнить цикл.

Loop Body — Логика, которая будет циклична (в нашем случае 150 раз). Index — Сколько шагов выполнено из 150 раз.
Теперь Нам надо занести в цикл логику. Начнем с рандомных чисел.

Random Float in Range — Все просто рандомайзер на максималках. Min — Минимальное число Max — Максимальное число Return Value — Рандомное число в диапазоне который мы задали

Break Transform — В моем случае это исходная точка координат спавна объектов.
Объяснять что такое Rotation, Scale. Нет смысла.
Начнем с математической части нам надо добавить к нулевой точке координат рандомное число.

Make Vector — объединяет обычные числа в тип Location.

Далее по списку вывод данных из функции:


На выходе у нас стоит:
True — Цикл в нашем случае мы спавним Actor Tree 2 (Дерево).
Return Value — Рандомная координата для дерева в цикле.
Completed — Выход из цикла.
Теперь можно вместо одно дерева, сразу три вида объекта сгенерировать на карте.
Итог:


Готовлю информацию для статьи про Dedicated server(Удаленный сервер), Мультиплеер, Создание сессий и подключение к ним, система стрельбы и сам процесс разработки игры.