Andrei Apanasik (🐱, 🔪,геймдев и игры) Profile picture
Professor of shitpost. Делаю игры, пишу про #gamedev. Пилю сервис Balancy для разработчиков игр. В телеге канал: https://t.co/RgtYIRJsUo.

May 26, 2021, 42 tweets

Что интересного показали на стриме про UE5.

UI система старая, но добавили много фич. Браузер ассетов и прочие плюшки.

Новая система Nanite для геометрии, которая "заменит LOD'ы". Позволяет миллионы трианглов отображать без проблем.

Temporal super resolution позволит при меньших затратах по ресурсам получить почти нативные 4K по цене 1080p.

Новая система для глобального освещения Lumen просто отвал жопы. Если ещё совмещать с фотореалистичными ассетами из Мегасканс, то вообще вышка.

Система для атмосферы позволяет легко всё настраивать, в том числе и объёмные облака. На уровне настроек куча модификаторов и параметров, которые позволяют твикнуть всё.

Quixel Bridge теперь полностью интегрирован в движок 💪

Добавили новый тип ассетов mega assemblies. Это что-то типа сборки из существующих ассетов.

Главная цель состояла в том, чтобы художникам было проще совместно работать и обмениваться ассетами.

Новый инструмент World Partition позволяет дизайнерам работать с миром не как с набором стриминг уровней, а как с одним большим миром, который автоматически разбивается на более мелкие ячейки.

Их можно загружать/выгружать в редакторе кусками, что кучу времени экономит.

Изменения на карте (добавить кустик) происходят на уровне акторов, а не карты. В итоге можно работать с одной картой одновременно и не будет головной боли при мёрдже 🤯 🤯 🤯

World Partition позволяет стримить из коробки. Ассеты вне установленного радиуса выгружаются и заменяются другими с меньшим резрешением.

Это всё на уровне конфигов вынесено. Можно настроить под свой проект.

Data layers позволят художникам работать вместе над одной сценой и переосмыслить её.

Эти слои можно переключать в рантайме, что позволяет загружать/выгружать тысячи ассетов.

Как пример, переход в другой мир через портал. Правда, тут, всё же, есть переходный момент с подзагрузкой. Но, всё равно, довольно резво.

Добавили для анимаций Full body IK solver. Может автоматически подстраиваться под тип пола/земли и высоту.

"Детерминированный надёжный и в 10 раз быстрее, чем раньше".

Появился новый фреймворк Game Feature Plugins, который позволяет разбить контент на модули. Может связать экшены, анимации, другие системы.

К примеру, в другом измерении у ГГ меняется абилка. Это всё задаётся на уровне конфига.

Все vfx, звуки, анимации, инпуты, блюпринты, относящиеся к абилке, в виде одного плагина в проекте, что позволяет отделять фичи и сделать проект более модульным и конфигурируемым.

Animation Motion Warping позволяют адаптировать рут анимации под мир. Можно переиспользовать.

Позволяет настроить нотификации для реакции на трансформы из блюпринтов.

Система реагирует на высоту препятствий, поворот персонажа и прочее.

Control Rig позволяет редактировать анимации прям в движке.

Full body IK позволяет настроить анимацию в ответ на какие-то внешние факторы: позиция противника и т. п. Всё на уровне конфига.

Например, настроить направление и дальность атаки в зависимости от положения ГГ.

Система Meta sounds позволяет использовать мощь редактора материалов для создания сложного процедурного звука.

Но это не только про новые фичи. Всё, что вам нравилось в UE4, тоже проапгрейдили.

Niagara particles, visual effects, chaos physics, блюпринты получили множество улучшений.

И, как заверяют Эпики, миграция с UE4 должна пройти без проблем, т. к. полная обратная совместимость между версиями движка💪

Уже можно скачать альфу UE5 и семпл проект Valley of the Ancient.

unrealengine.com/en-US/unreal-e…

Запилил отдельным постом, если кому-то так удобнее читать.

suvitruf.ru/2021/05/26/892…

Покопался в доках. Контент для Nanite ничем не отличается от обычных статичных мешей, но Nanite может обрабатывать на порядки больше треугольников и инстансов, чем при рендеринге обычной геометрии. Рекомендуется использовать виртуальные текстуры.

Во время импорта меши разбиваются на иерархические кластеры групп треугольников. А уже во время рендеринга кластеры меняются местами на лету с разными уровнями детализации в зависимости от обзора камеры и без разрывов соединяются с соседними кластерами в одном объекте.

В памяти находятся только видимые детали. Как следствие, чтобы это всё нормально стримилось, нужен SSD.

Для прокси-мешей можно настроить уровень детализации.

Прокси-меши используются для коллизий на уровне полигонов, трассировки лучей, запекания света и другого.

При этом по умолчанию используются авто-генерируемый LOD0, что весьма странно 🤔

По крайней мере, есть возможность выбрать кастомный прокси и настроить традиционные LOD’ы.

Если верить доке, то у Nanite меша и качество лучше, и размер меньше.

Могут быть проблемы с occlusion culling. Если есть сложнная геометрия близко друг к другу около самой верхней поверхности, Nanite не сможет определить, какая из них находится сверху или снизу, что приведет к отрисовке обоих.

Lumen Global Illumination заменяет Global Illumination Screen Space (SSGI) и Distance Field Ambient Occlusion (DFAO). Lumen Reflections заменяет Screen Space Reflections в Unreal Engine 4.

Сначала прогоняется Screen Tracing, т. к. он меньше жрёт ресурсов.

Потом уже Lumen Ray Tracing, состоящий из двух методов: программная трассировка, работающая на самом широком спектре железа и платформ, и аппаратная трассировка лучей, для работы которой требуются поддерживаемые видеокарты и системы.

По умолчанию работает Signed Distance Fields.

Требует поддержка Shader Model 5 у железа. Много ограничений: работает только со статикой, World Position Offset не поддерживается, с прозрачностью проблемы.

Hardware Ray Tracing поддерживает больший спектр доступной геометрии.

Проседает, если больше 100 000 инстансов. Динамическая деформация мешей может загнать фпс в 0.

Lumen ещё генерирует Surface Cache для ближайших поверхностей сцены (где-то 200 метров от камеры). За этим расстоянием работает только screen traces.

Есть экспериментальное представление Distant Scene. Оно как раз было использовано в прошлой демке Unreal Engine 5 «Lumen in the Land of Nanite» для достижения непрямого освещения в каньоне. Покрывает диапазон от 200 метров до 1 километра от камеры.

Работает путём рендеринга Reflective Shadowmap с низким разрешением от солнца с использованием Nanite и отслеживает это поле высот, чтобы уловить один отскок непрямого освещения солнца.

Для прода пока не рекомендуется использовать.

Странно, что в видео про это не сказали, но появилась система Turnkey, которая позволяет настроить проект под различные платформы, чтобы потом любой участник проекта одним нажатием мог поднять у себя нужное окружение.

Ещё в видео не сказали, что теперь можно влиять на симуляцию Chaos Physics в отдельных регионах.

В таких областях можно, например, прикладывать силы к телам, разрушать кластеры геометрии и т. д.

По поводу IO...Тут вот видео появилось, где человек запустил демку на HDD без видимых проблем с подгрузкой.

🤯 🤯 🤯

Вот ещё видео от него. В демке был момент с заходом в портал. И там полная смена ассетов окружения.

4 секунды на nvme и 15 на HDD.

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling