В версии 43.10 в UEFN появится остров «Тени аббатства» — новый пример из раздела «Демонстрация возможностей», который показывает, как создавать детализированное, высококачественное окружение без лишних затрат памяти и снижения производительности. В этом выпуске также появятся новые окна для добавления и смены брендов, а также экспериментальные возможности Scene Graph — модульные камеры и система восприятия, с помощью которой модули смогут обнаруживать то, что видят, слышат и к чему прикасаются. Кроме того, добавлен экспериментальный API пула добычи в Verse для составления собственных таблиц добычи. Теперь вы можете создавать черновики публикаций и составлять их расписание в сообществах Fortnite. Вас также ждут новое оружие, наборы «Летнего лагеря» и многое другое.
Остров «Тени аббатства»
Остров Тени аббатства теперь доступен в UEFN в разделе «Демонстрация возможностей». На его примере вы узнаете, как создавать проработанное, высококачественное окружение.
На острове используются ресурсы Quixel, оптимизированные для UEFN. На примере острова показано, как придать играм Fortnite узнаваемый визуальный стиль и создать качественное окружение, не забывая об оптимизации производительности и расхода памяти.
Шаблон включает структурированные и оптимизированные наборы ресурсов окружения: растительность, надгробия, архитектурные элементы, дорожки, материалы, текстуры и погодные системы. Ресурсы совместно используют текстуры, материалы и другие элементы, поэтому с их помощью можно создавать детализированное окружение, которое потребляет меньше памяти и меньше нагружает систему. Попробуйте использовать этот остров как основу собственного проекта!
Подробнее о дизайне окружения и использованных приёмах читайте в статье Shadows of the Abbey Island.
Новые способы работы с брендированным контентом
Теперь добавлять бренд в проект и менять его можно в двух новых окнах: Добавить брендированный контент и Сменить бренд. Раньше для этого приходилось менять значение раскрывающегося списка «Выбранный бренд» в настройках проекта.
Чтобы получить доступ к этим параметрам, перейдите в Проект > Сменить бренд. Какое окно откроется, зависит от проекта:
Добавить брендированный контент. Просматривайте список брендов, знакомьтесь с информацией о каждом из них и правилами использования, а затем добавляйте бренд в проект, в котором его ещё нет.
Сменить бренд. Проверьте, нет ли среди сохранённого контента ресурсов, запрещённых выбранным брендом, устраните конфликты прямо в окне и смените бренд.
Подробнее см. в разделах Доступ к материалам брендов и Преобразование острова в брендированный остров.
Камеры Scene Graph: модификаторы (экспериментальная функция)
В Scene Graph появится широкий набор модификаторов камеры. Это небольшие компоненты, из которых можно собирать различные варианты поведения камеры. Каждый компонент выполняет одну задачу: перемещает камеру, поворачивает её, сглаживает движение или не даёт ей проходить сквозь стены. Добавьте их в стек модификаторов камеры: они будут выполняться в порядке добавления, позволяя выстраивать сложные сценарии поведения камеры. Модификаторы можно заранее настроить на панели «Сведения» и включить в готовые элементы либо создавать во время выполнения игры, чтобы динамически менять их поведение.
Объединяя несколько модификаторов, можно воссоздать привычные режимы из устройств камер творческого режима, такие как «Камера с фиксированным углом», «Камера с фиксированной точкой» и «Вращающаяся камера». Поскольку вы сами выбираете все компоненты, можно тонко настраивать любую часть системы камеры или заменять одни компоненты другими. В нашей документации приведены примеры кода для каждого из этих вариантов.
Привязка к модулю | Привязывает камеру к целевому модулю. |
Стрела камеры | Поворачивает камеру по горизонтали и вертикали в ответ на действия игрока. При желании можно включить автоматическое вращение. |
Смещение | Смещает камеру в системе координат камеры, в системе координат опорной точки или в мировой системе координат. |
Выталкивание при столкновении | Не позволяет камере проникать внутрь объектов окружения, выталкивая её за пределы коллизии. |
Демпфирование перемещения | Сглаживает движение камеры с помощью пружины с критическим демпфированием. Демпфирование по каждой оси происходит независимо. |
Демпфирование вращения | Аналогичным образом сглаживает вращение камеры. |
Задать перемещение | Задаёт новое положение камеры, заменяя значение перемещения в её текущем состоянии. |
Задать вращение | Задаёт новое вращение камеры, заменяя значение вращения в её текущем состоянии. |
Кадрирование поворотом | Удерживает цель в кадре, поворачивая камеру на месте. |
Кадрирование перемещением | Удерживает цель в кадре, перемещая камеру вдоль поперечной направляющей и при необходимости вверх или вниз. |
Пользовательские модификаторы
Если стандартных модификаторов недостаточно, вы можете написать собственные. Создайте подкласс camera_modifier, переопределите метод Evaluate и добавьте новый модификатор в стек, как любой другой.
Однако учтите: пользовательские модификаторы пока не выполняются на стороне клиента. Для этого нужна поддержка predicts в языке Verse, которая пока не выпущена. Если хотя бы один модификатор в стеке не поддерживает локальное предсказание, вся система камеры начинает выполняться на сервере с последующей репликацией результата клиенту. Поэтому задержка затрагивает все модификаторы в стеке, а не только добавленный вами. Если камера должна реагировать без заметной задержки, пока используйте модификаторы Epic.
Модификаторы и сама система камер Scene Graph находятся на экспериментальной стадии и активно разрабатываются. Острова, использующие эти возможности, нельзя публиковать.
Ранее доступные модификаторы «Камера с фиксированным углом», «Камера с фиксированной точкой» и «Вращающаяся камера» удалены. Вместо них теперь можно самостоятельно собирать нужное поведение камеры из небольших модификаторов.
Система восприятия Scene Graph (экспериментальная функция)
Новая экспериментальная система восприятия предоставляет API Scene Graph и Verse для создания игровых механик на основе того, что модули могут видеть, слышать и ощущать при прикосновении. С её помощью можно создавать игры, в которых охранники замечают нарушителей, существа реагируют на звуки, а объекты — на физический контакт.
Принцип работы генераторов и детекторов: для каждого вида восприятия используются генератор на объекте, который можно обнаружить, и детектор на объекте, способном его обнаружить. Интерфейсы пространственного восприятия также позволяют создавать собственные виды восприятия с помощью компонентов Scene Graph.
Подписки с фильтрацией: подпишите модуль на события детектора и настройте фильтр, чтобы код игровых механик на Verse получал только нужные события обнаружения.
Кроме того, предусмотрены следующие готовые виды восприятия от Epic:
Зрение: добавьте генераторы зрения объектам, которые можно увидеть, а детекторы зрения — объектам, способным видеть. Настройте дальность и угол обзора, ближнюю плоскость отсечения и гистерезис. Для игровых механик можно использовать данные обнаружения, например степень различимости объекта и его положение.
Слух: добавьте генераторы слуха объектам, которые могут издавать звуки, а детекторы слуха — объектам, способным их слышать. Звуки могут обнаруживаться непрерывно или издаваться в виде одиночных импульсов. При этом доступны такие данные, как громкость, положение и игровые теги.
Касание: добавьте генераторы касания объектам, которых можно коснуться, а детекторы касания — модулям, способным распознавать физический контакт. При обнаружении касания предоставляются данные о коллизии для каждого контакта. Кроме того, можно отслеживать одну или несколько сеток модуля.
Известное ограничение: система касания пока не обнаруживает персонажей игроков и NPC.
Первый экспериментальный выпуск посвящён базовым видам восприятия и общей модели генераторов, детекторов, подписок и событий обнаружения. В одном из будущих выпусков Epic планирует добавить систему осведомлённости на основе этих механизмов восприятия. Она будет поддерживать более сложные возможности: память, объединение данных от разных органов чувств, сохранение и постепенное угасание информации.
Это ранняя экспериментальная версия, поэтому API может измениться. Острова с этой функцией пока нельзя публиковать.
Подробнее см. в разделе Восприятие с помощью Scene Graph.
Стеки модификаторов Verse (экспериментальная функция)
Система стеков модификаторов, используемая в API камер и конвейера обработки урона, обновлена: метод AddModifier больше не принимает позицию в качестве аргумента.
Позиции типа Rational, а также FirstPosition и LastPosition удалены. Теперь модификаторы выполняются в порядке добавления. Если ваш код передаёт в AddModifier позицию, вместо этого добавляйте модификаторы в порядке, в котором они должны выполняться.
Мы работаем над тем, чтобы в дальнейшем сделать эту реализацию намного гибче, сохранив обратную совместимость с текущими API, которые её используют.
Это по-прежнему ранняя экспериментальная версия, поэтому API может измениться. Острова с этой функцией пока нельзя публиковать.
Пулы добычи (экспериментальная функция)
С помощью нового API пула добычи в Verse можно управлять тем, какие предметы выпадают и как часто. Назначьте таблицу добычи любому объекту на острове — сундуку, побеждённому врагу или месту для рыбалки. При каждом обращении к такой таблице из неё будут выбираться награды.
Пулы добычи с весовыми коэффициентами позволяют одним наградам выпадать часто, а другим — редко. Можно выдавать несколько предметов сразу, ограничивать частоту появления определённой награды и вкладывать одни пулы в другие, создавая многоуровневые таблицы добычи.
С помощью API можно создавать:
Сундуки с обычными, редкими и легендарными наградами
Врагов, из которых после поражения выпадает сразу несколько предметов
Особые награды, которые не могут повторяться в рамках одного выпадения добычи
Добычу, состав которой зависит от того, кто открывает контейнер
Также можно случайным образом выбирать награды из стандартных пулов добычи Fortnite — отдельно или в сочетании с собственными таблицами. В этот выпуск входят следующие пулы:
Сундук (fort_loot_pool_chest)
Редкий сундук (fort_loot_pool_chest_rare)
Ящик с боеприпасами (fort_loot_pool_ammo_box)
Редкий ящик с боеприпасами (fort_loot_pool_ammo_box_rare)
Груз с припасами (fort_loot_pool_supply_drop)
Ящик с едой (fort_loot_pool_food_box)
Это ранняя экспериментальная версия, поэтому API может измениться. Острова с этой функцией пока нельзя публиковать.
Мобильные устройства: жест вращения для виртуального указателя (экспериментальная функция)
Для виртуального указателя добавлено экспериментальное действие ввода «Вращение указателя». Оно позволяет разработчикам отслеживать жест вращения двумя пальцами на сенсорном экране. Экспериментальная версия поможет собрать отзывы об использовании данных жеста сведения пальцев и выяснить, не слишком ли высока чувствительность управления. Оставьте отзыв здесь.
Ввод
Действие ввода Move больше не является экспериментальной функцией.
Действие ввода Interact и контекст InteractMapping больше не являются экспериментальными функциями.
Учитывать преобразование игрока для сенсорных кнопок устройства «Контроллер интерфейса»
Для параметра «Переопределение раскладки сенсорного управления» добавлена новая настройка «Учитывать преобразование игрока». Используйте её вместе с параметром «Применить преобразование холста», чтобы задать расположение кнопки по умолчанию, но при этом сохранить возможность использовать индивидуальную раскладку интерфейса игрока.
Если настройка выключена (значение по умолчанию), всегда применяется заданное вами положение кнопки.
Если настройка включена, заданное вами положение служит исходным, но если игрок уже переместил кнопку, используется выбранное им положение.
Настройка доступна только при включённом параметре «Применить преобразование холста».
Изменения раскладки, внесённые игроком, применяются сразу, прямо во время игры.
Исправление жанров островов с неверной классификацией
Острова, ранее скрытые из «Поиска» из-за несоответствия жанра содержанию, снова стали доступны. Мы присвоили каждому из них жанр, который точнее отражает его содержание, и сняли ограничение.
В дальнейшем Epic может менять жанр острова, если другой жанр лучше соответствует его содержанию. В «Поиске» будет использоваться обновлённый жанр. Перед выбором жанра ознакомьтесь с его описанием на творческом портале.
Подробнее о классификации жанров см. в статье Как работает меню «Поиск».
Обновления инвентаря и каталога ресурсов
Ознакомьтесь со всеми новыми устройствами и предметами, представленными в этом обновлении!
Новое оружие
В творческий режим Fortnite и UEFN добавлены новые автоматические дробовики «Амок» с мгновенной регистрацией попадания следующих категорий редкости: обычная, необычная, редкая, эпическая, легендарная и мифическая.
Известно, что в этом выпуске данное оружие недоступно в Verse. Оно появится в Verse в следующем крупном обновлении.
В творческий режим Fortnite и UEFN добавлены новые пистолеты-пулемёты «Погибель» следующих категорий редкости: необычная, редкая, эпическая, легендарная и экзотическая.
Известно, что в этом выпуске данное оружие недоступно в Verse. Оно появится в Verse в следующем крупном обновлении.
Новые наборы и готовые элементы
Набор полов «Летний лагерь»
Набор стен «Летний лагерь»
Набор крыш «Летний лагерь»
Набор объектов «Летний лагерь»
Лесные тропы «Летнего лагеря»
Сообщества Fortnite: черновики и планирование публикаций
Планируйте публикации в сообществах Fortnite заранее. Теперь в веб-версии можно сохранять публикации и ответы в черновики, создавать несколько публикаций за один раз и назначать дату и время их выхода с шагом 15 минут в своём часовом поясе.
Запланированные публикации проходят модерацию при назначении времени выхода, поэтому вы заранее будете знать, что публикация появится в выбранный момент.
Черновики и запланированные публикации находятся на новой странице «Черновики и запланированные публикации» в боковой панели. Подробнее см. в разделе Creating Content.
Известные проблемы
Острова, на которых используется экспериментальная функция «Включить регуляторы каркаса в Verse», могут не запускаться в версии 43.10. Эту проблему исправят в одном из следующих выпусков.
Обновления плана развития
Актуальную информацию о разработке Unreal Editor для Fortnite см. в открытом плане развития UEFN. Обратите внимание: пункты плана развития могут меняться.
Поделитесь мнением
Хотите предложить новую функцию или поделиться отзывом о существующей? Оставьте сообщение в разделе Feedback & Requests на форумах сообщества разработчиков Epic. Об ошибках сообщайте в разделе Issues and Bug Reporting.
Исправление ошибок, отмеченных сообществом
Ниже приведены исправленные ошибки, о которых нам сообщали на форумах. Спасибо за терпение и за то, что сообщаете нам об этих проблемах!
Исправлена ошибка, из-за которой клинок «Тайфун» и револьверы Устранителя не могли выполнять связанные с перемещением действия на островах с включённым свободным падением.
Исправлена ошибка, мешавшая стрелять из пистолета-пулемёта «Рывок» обычной редкости, перезаряжать его и применять к нему обёртки.
Исправлена ошибка, из-за которой меню «Быстрое оружие» отключало режим ввода для интерфейса у игроков с контроллером, не позволяя им взаимодействовать с пользовательским интерфейсом.
Исправлена ошибка, из-за которой вместо имени, заданного в устройстве «Генератор охранников», в игре отображалось название образа охранника.
Исправлена ошибка, из-за которой охранники не могли вооружиться Молниевой пушкой.
Исправлена ошибка, из-за которой определение персонажа Crawly Tech непрерывно засоряло журнал вывода после назначения устройству персонажа, что приводило к остановке скриптов Verse во время игры.
Полный список исправлений, запланированных для версии 43.10, см. в результатах поиска на форумах сообщества разработчиков Epic.
Обновления и исправления экосистемы Fortnite
Новое
Для устройства «Контроллер интерфейса» добавлен параметр Переопределить сенсорную кнопку подбора. Он позволяет изменить стандартный значок кнопки подбора предметов.
Исправления
Исправлена ошибка, из-за которой после использования клинка «Тайфун» или револьверов Устранителя нельзя было раскрыть или сложить дельтаплан.
Исправлена критическая ошибка, которая могла происходить при вызове
OnBeginна устройствах творческого режима.Исправлена ошибка, из-за которой при скольжении по склону на островах с включённой физикой запускались ресурсоёмкие повторные расчёты симуляции.
Обновления и исправления UEFN
Новое
Настройки устройства «Смена дня и ночи» теперь доступны через API Verse.
API устройства «Смена дня и ночи» теперь позволяет управлять временем суток и небом с помощью Verse. Теперь в Verse доступна вся логика работы устройства, что позволяет точнее управлять циклом смены дня и ночи.
Функции:
Enable,Disable,IsEnabled,FadeIn,FadeOut.Поля: методы чтения и установки значений примерно 55 параметров устройства, включая цикл смены дня и ночи, приоритет, скорость плавного перехода, параметры области действия, солнечный свет, туман, свет неба, небо и облака.
Новые перечисления:
day_night_cycle_mode: Default, FixedTime, StartAtSpecifiedTime, RandomFixedTime, RandomStartTime, LocalFixedTime.day_sequence_blend_mode: Global, Volume, Time.
Поведение: значения, заданные в Verse, передаются всем игрокам через новый компонент
FortPlayspaceComponent_DaySequenceDevices. Эти значения переопределяют настройки на панели «Сведения» до конца раунда.
Исправления
Исправлена ошибка, из-за которой вставленные и дублированные модули не передавались через LiveEdit.
Исправлена ошибка, из-за которой соединения Pixel Streaming в RemoteSession редактора переключались на MJPEG, поскольку разрешение на доступ к сигнальному узлу предоставлялось слишком поздно.
Исправлена ошибка, из-за которой при подключении приложения UE Remote к мобильной сессии UEFN вместо Pixel Streaming использовался MJPEG с более высокой задержкой.
Редактор
Исправления
Если удаляемый ресурс является ресурсом Verse, диалоговое окно удаления теперь предлагает только допустимые ресурсы Verse для замены ссылок.
Платформа
Новое
Добавлены оптимизация и проверка корректности, позволяющие пропускать обработку виджетов интерфейса, полностью находящихся за пределами экрана.
Исправления
Исправлена ошибка, из-за которой при возвращении с острова в главное меню не освобождалась часть памяти, выделенной для отрисовки.
Исправлена ошибка на экране настроек: при прокрутке отключённые параметры могли самопроизвольно включаться, а включённые — выключаться, что позволяло вносить недопустимые изменения.
Исправлена ошибка, которая могла приводить к повреждению данных в памяти при настройке персонажа.
Исправлена логика передачи диапазонов отсечения в DirectX: недопустимые отрицательные значения больше не передаются, чтобы предотвратить возможные сбои и зависания графического процессора.
Исправлена ошибка, из-за которой в режиме производительности при низком качестве сеток скелетные сетки отображались с избыточной детализацией. Это должно повысить производительность графического процессора.
Устранено потенциальное состояние гонки при создании и уничтожении сцены отрисовки. Это предотвращает ситуацию, когда режим отрисовки мог бы измениться без перезапуска клиента.
Исправлен возможный сбой, связанный с дисплеями Windows.
Окружение и ландшафты
Новое
Для WaterBodyIsland разрешено использование свойств ландшафта.
Исправления
Исправлена ошибка, из-за которой меню «Найти в материалах» появлялось во всех окнах.
Исправлено выражение материала для смешивания слоёв ландшафта: теперь новое поведение смешивания можно включать отдельно для каждого выражения материала. Это устраняет проблему совместимости: существующий контент мог зависеть от прежнего алгоритма смешивания, а новые материалы могут использовать улучшенный вариант. Также добавлен необязательный вход Default, позволяющий задать собственное значение по умолчанию, когда сумма весов слоёв меньше 1. Это устраняет неоднозначность прежнего алгоритма, при котором смешивание всегда начиналось с нуля, независимо от фактического значения по умолчанию у атрибута материала.
Исправлен периодически возникавший сбой при загрузке старого ландшафта без слоёв редактирования.
Ландшафт: устранено срабатывание проверки assert при конфликте резервного исправления названия травы с уже существующей записью об этом названии. Теперь в такой ситуации появляется предупреждение в журнале и в инструменте «Проверка карты». Из предупреждения можно принудительно перестроить данные травы ландшафта, устранив неоднозначности. При этом все прокси-объекты ландшафта помечаются как изменённые, что тоже помогает: проблема возникает только при загрузке данных из предыдущей версии движка.
Исправлена ошибка, из-за которой клавиши быстрого доступа инструментов ландшафта (запятая, точка и Escape) срабатывали при редактировании текстового поля.
Исправлены предупреждения шейдеров при входе в режим окрашивания ландшафта.
Исправлена ошибка, из-за которой меню «Найти в материалах» появлялось во всех окнах.
Scene Graph
Исправления:
Конвейер обработки урона: исправлена ошибка, из-за которой при нулевом уроне или восстановлении здоровья не возвращался результат и Verse не получал уведомления. Теперь даже при нулевом значении возвращается результат и генерируется событие OnDamaged или OnHealed.
Способности Verse: исправлена ошибка, из-за которой способности с запросом целей в клиновидной области не находили модули Scene Graph, не связанные с акторами, и поэтому не могли нанести им урон. Теперь запрос на выбор самого себя в качестве цели также сохраняет модуль, не являющийся агентом, в качестве инициатора.
Обновления и исправления Verse
Исправления:
Исправлен сбой Verse, возникавший, когда выражение race завершалось, пока проигравшая ветвь ожидала продолжения внутри вложенного выражения sync или race.
Исправлен сбой Verse, возникавший при запуске параметрической функции.
Обновления и исправления MCP
Новое:
Добавлен набор инструментов Fab для поиска с помощью ИИ-агентов по Fab и библиотеке Fab пользователя, просмотра сведений о товарах и стоимости лицензий, а также установки ресурсов Fab в UEFN.
Исправления:
PlaysetEditorSubsystem позволяет повторно создавать игровой набор открытого уровня и получать через Python и MCP сведения о размещённых в нём объектах.
Исправлены выявленные при тестировании MCP проблемы с инструкциями для ИИ-агентов и поиском по библиотеке; также внесены изменения формулировок по результатам юридической проверки.
Обновления и исправления Lore
Новое:
В репозиториях Lore включена сборка мусора: неиспользуемые данные удаляются, чтобы уменьшить размер репозитория.
Исправления:
Исправлена ошибка, которая могла вызывать длительные зависания при переключении веток. Теперь переключение веток должно происходить значительно быстрее.
Исправлена ошибка, из-за которой после переключения веток синхронизация основной ветки завершалась сообщением «Branch has been advanced by another instance».
Примечания к обновлению
Теперь при попытке добавить компонент, уже принадлежащий другому модулю, в журнал записывается предупреждение. В одной из следующих версий такая попытка будет приводить к ошибке. Сначала удалите компонент из прежнего модуля или создайте новый.