Перейти к содержимому

Как добавить живую карту с видом сверху на радар в Unreal Engine 5 | UI, часть 3

Dev-initely Mario

0:00 / 0:00

Как добавить живую карту с видом сверху на радар в Unreal Engine 5 | UI, часть 3

108 просмотров · 13 дней назад
Dev-initely Mario
254 подписчика
108 просмотров · 13 дней назад
В этом уроке по Unreal Engine 5 мы завершаем создание нашего радара целей, добавив живую карту с видом сверху непосредственно в интерфейс компаса. В предыдущих частях наш радар уже мог вращаться вместе с игроком, показывать текущее направление цели, отображать расстояние в метрах и приближать маркер цели по мере приближения игрока к ней. Радар не имел фактического представления игрового мира. В этом видео мы это исправим. Мы начнем с создания Render Target и добавления компонента Scene Capture Component 2D к нашему персонажу игрока. Scene Capture следует за игроком сверху и использует ортогональную проекцию для создания живого представления окружающего уровня с видом сверху. Далее мы соединяем Scene Capture с Render Target и создаем отдельный интерфейс для радара, чтобы наш интерфейс мог беспрепятственно получать доступ к Scene Capture. После этого мы создаем материал пользовательского интерфейса, который отображает Render Target внутри нашего радара. Поскольку наш радар имеет круглую форму, мы также маскируем целевую область рендеринга, чтобы карта помещалась внутри круглого компаса, а не отображалась в виде квадратного изображения. Затем мы подключаем карту в реальном времени к нашему существующему WBP_CompassRadar. Захват сцены всегда должен быть направлен прямо вниз с углом наклона -90 градусов. Только угол рыскания должен изменяться в соответствии с направлением взгляда игрока. После исправления этого, карта будет правильно вращаться вместе с нашим радаром, определяющим направление движения. Затем мы регулируем ортогональную ширину, чтобы контролировать, какая часть окружающего мира видна. Наконец, мы напрямую подключаем дальность радара к ортогональной ширине. Вместо того чтобы каждый раз вручную изменять оба значения, мы вычисляем: Максимальное расстояние радара = Ортогональная ширина / 2 Это означает, что маркер цели и видимая карта всегда используют один и тот же масштаб в мировом пространстве. Если мы позже изменим масштаб радара, маркер цели автоматически останется в правильном положении. К концу этого видео наш радар теперь обладает следующими характеристиками: Ортографическая карта в реальном времени (вид сверху) Вращающийся компас с направлением движения вверх Направления N / E / S / W Фиксированная стрелка игрока Маркер цели в реальном времени Расстояние до цели в метрах Позиционирование маркера на основе расстояния Фиксация маркера на внешнем кольце радара Правильное размещение цели на карте Автоматическая привязка дальности радара к масштабированию карты Теперь маркер цели располагается точно там, где находится цель на карте в реальном времени. Если цель находится за пределами видимой дальности радара, маркер остается на внешнем краю, чтобы игрок знал, в каком направлении двигаться. На этом завершается основная система радара целей. Что вы узнаете: Как создать целевую область рендеринга в Unreal Engine 5 Как использовать Scene Capture Component 2D Как создать ортогональную мини-карту Как создать радар с видом сверху в реальном времени Как отобразить целевую область рендеринга в UMG Как создать материал пользовательского интерфейса Как замаскировать карту в круговой радар Как вращать карту вместе с игроком Как исправить проблемы с вращением по тангажу и рысканию Как управлять масштабированием радара с помощью ширины ортогональности Как синхронизировать дальность радара с масштабом карты Как точно позиционировать маркеры целей Как построить масштабируемую систему радара целей Разделы: 0:00 Введение и конечный результат 0:36 Обзор текущего радара 1:20 Зачем нам нужно представление карты 1:52 Создание целевой области рендеринга радара 2:48 Добавление Scene Capture 2D 3:32 Настройка ортогональности Проекция 4:09 Настройка ширины ортогоналии 4:21 Подключение целевого объекта рендеринга 4:50 Перемещение захвата сцены над игроком 5:36 Подготовка поворота радара 7:28 Создание интерфейса радара 8:35 Добавление интерфейса к персонажу 9:04 Получение ссылки на захват сцены 9:56 Поворот захвата сцены 12:05 Тестирование целевого объекта рендеринга 12:57 Исправление отсутствующей функции интерфейса 14:42 Повторное тестирование интерфейса 15:00 Создание материала пользовательского интерфейса радара 15:55 Установка домена материала на пользовательский интерфейс 16:21 Добавление текстуры целевого объекта рендеринга 16:55 Создание маски круговой карты 19:58 Завершение создания материала кругового радара 20:37 Добавление карты в реальном времени к радару 21:09 Тестирование карты сверху вниз 21:25 Настройка размера карты 22:10 Создание Отдельное изображение карты 23:35 Изменение радиуса маркера 23:51 Тестирование вращающейся карты 24:53 Выявление проблемы вращения 25:05 Исправление тангажа и рыскания 25:19 Тестирование правильного вращения карты 26:09 Исправление видимости стрелки игрока 26:18 Настройка вида радара 26:53 Изменение ширины ортогоналии 27:32 Сопоставление положения маркера с картой 28:57 Почему масштаб карты и масштаб маркер...