> > > > Разработчики раскрыли подробности технологий движка UE5

Разработчики раскрыли подробности технологий движка UE5

Опубликовано:

unreal-engine4Несколько дней назад Epic Games представила новый игровой движок Unreal Engine 5. Финальная версия будет готова к концу 2021 года, причем движок будет поддерживать и приставки нового поколения PlayStation 5 и Xbox Series X. Внимание геймеров привлекла первая техническая демонстрация, показанная на PlayStation 5 в реальном времени.

Наши коллеги Digital Foundry смогли пообщаться с разработчиками Epic по поводу Unreal Engine 5 и собрали интересные подробности.

Движок Unreal Engine 5 отличается высокой степенью масштабируемости. Он может работать как на консолях нового поколения, так и ПК. Поэтому аппаратные требования могут быть совершенно разные. Показанная демонстрация просчитывалась на внутреннем разрешении 1440p с 30 FPS, после чего масштабировалась. Однако данные значения нельзя назвать индикатором производительности UE5, поскольку здесь все зависит от состояния "железа" в распоряжении разработчиков и предварительной версии самого движка Unreal Engine.

Но перейдем к новым технологиям Unreal Engine 5:

Nanite

Nanite - рендеринг с микрополигонами. В играх выводятся сотни, если не тысячи 3D-объектов. Все эти объекты опираются на более-менее детальную 3D-модель. Разработчики используют различные технологии, чтобы достичь оптимального баланса между числом объектов и уровнем детализации LOD. Вероятно, самой известной является технология изменения уровня детализации в зависимости от расстояния до зрителя. Но с помощью технологий тесселяции детали геометрии можно хранить в сжатом виде, а затем "разворачивать" при необходимости.

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

Рендеринг с микрополигонами ранее не использовался в реальном времени. Говоря простыми словами, рендеринг микрополигонов выводит объекты с разрешением один полигон на пиксель. К этому добавляется карта высоты с повышенным разрешением. Но при этом все детали будут видны лишь при корректном расчете освещения, о чем мы поговорим ниже в разделе Lumen.

Также остаются вопросы насчет того, все ли объекты могут выводиться с помощью микрополигонов. Камни и другие поверхности хорошо подходят для рендеринга с микрополигонами. Но как быть с тонкими деталями, подобными волосам или растительности? Кроме того, для рендеринга с микрополигонами требуется обрабатывать значительный поток данных геометрии, то есть требуется большой массив видеопамяти, а также скоростное подключение GPU к основной памяти и накопителю. Sony уже подчеркнула скоростной SSD как преимущество своей консоли. Что наверняка положительно скажется на рендеринге с микрополигонами.

Lumen

Lumen является технологией Global Illumination Technique (GI), то есть глобального освещения, которое используется для сцены целиком. В отличие от глобального освещения через трассировку лучей, как в той же игре Metro: Exodus, технология Lumen использует отраженные лучи после первого касания. То есть, строго говоря, ее нельзя отнести к традиционной трассировке лучей.

Lumen оказывается намного более гибкой и динамичной реализацией, чем традиционное освещение через статические карты, заранее просчитанные разработчиками. Разработчики, например, могут видеть эффекты в реальном времени при работе над 3D-сценой, не дожидаясь финального рендеринга. В целом, Lumen является гибридным решением между полным глобальным освещением через трассировку лучей и статическими картами освещения.

Подобная гибкость хорошо видна в демо. Для крупных и удаленных объектов (гора, например), используются воксели VXGI (Voxel Global Illumination). Для мелких детализованных объектов используется глобальное освещение в пространстве экрана, а для промежуточных объектов - гибридное представление Signed Distance Fields с упрощенной геометрией. В зависимости от размера объекта используются разные уровни детализации, что существенно снижает аппаратные требования по сравнению с глобальным освещением через трассировку лучей.

Lumen также опирается на временную компоненту. То есть применяется обратная отдача, ранее полученная информация может использоваться в следующем рендеринге. Здесь необходимы несколько итераций, поэтому придется смириться с некоторой задержкой вывода.

Подписывайтесь на группы Hardwareluxx ВКонтакте и Facebook, а также на наш канал в Telegram (@hardwareluxxrussia).