Как стать автором
Обновить

Процедурная генерация карты

Время на прочтение1 мин
Количество просмотров4.6K

Процедурная генерация 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.

Make Vector
Make Vector

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

Вывод данных
Вывод данных

На выходе у нас стоит:

True — Цикл в нашем случае мы спавним Actor Tree 2 (Дерево).

Return Value — Рандомная координата для дерева в цикле.

Completed — Выход из цикла.

Теперь можно вместо одно дерева, сразу три вида объекта сгенерировать на карте.

Итог:

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

Теги:
Хабы:
Всего голосов 6: ↑1 и ↓5-2
Комментарии2

Публикации

Истории

Работа

Ближайшие события

19 сентября
CDI Conf 2024
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн