Что такое Unreal Engine 5 Lumen? Все, что вам нужно знать об этом



Попробуйте наш инструмент устранения неполадок

Unreal Engine 5 наконец-то вышел в массы, и теперь его можно использовать в производстве. Новая итерация масштабного проекта Epic продвигает игровую индустрию вперед и устанавливает новые границы. Недавно запущенная техническая демонстрация Matrix, которую теперь можно загрузить из магазина Epic Games, демонстрирует все последние функции движка. Одной из таких функций является Lumen. Сегодня мы рассмотрим, что такое Lumen, почему это технологическое чудо и почему его можно считать огромным скачком вперед с точки зрения производительности и оптимизации.



Что делает Unreal Engine 5 Люмен До?

Lumen, на языке непрофессионала, можно описать как трассировку лучей, но гораздо менее интенсивную. Кроме того, он полностью использует аппаратное обеспечение, что снижает потребность в выделенных ядрах RT, которые есть в видеокартах Nvidia RTX, которые специализируются на трассировке лучей. Люмен отслеживает лучи, но по-другому. Чтобы понять, насколько это отличается, давайте быстро посмотрим, как работает аппаратная трассировка лучей.



Свет отражается от поверхностей. Это означает, что любой луч света почти никогда полностью не поглощается каким-либо практически существующим телом. Вот почему свет, попадающий из окна, всегда будет отражаться от области, на которую он падает, и освещать всю комнату.



Но для определения того, как каждый луч света будет отражаться от поверхностей, потребуется много вычислительной мощности. Рендеринг одного кадра может занять несколько часов. Но в видеоиграх у нас не так много времени. Видеокарты должны рендерить такие кадры с трассировкой лучей 60 раз в секунду, что было практически невозможно.

Итак, графические инженеры придумали хитрый способ обойти эту проблему. Решение заключалось в имитации освещения. В этом процессе был разработан уровень, а затем компьютеру было позволено проработать освещение для сцены. Затем тени и освещенные участки были применены в качестве текстуры к текущим моделям. Эта текстура называется кубической картой, а процесс — растеризацией. Этот процесс имеет много минусов. Во-первых, если перемещается один объект в сцене, необходимо перезаписывать всю кубическую карту, что значительно замедляет процесс разработки. Но за почти два десятилетия оптимизации растеризация слишком хорошо справилась со своей задачей. В наши дни во многих случаях растровое освещение может превзойти освещение с трассировкой лучей. Но в чем разница между растеризацией и трассировкой лучей?

Трассировка лучей в реальном времени. Это означает, что путь, по которому проходят лучи света, индивидуально рассчитывается графическим процессором 60 раз в секунду. Это значительно улучшает освещение, потому что каждый луч света теперь движется точно так же, как и в реальной жизни.



Но эти выделенные высокопроизводительные ядра RT очень требовательны к ресурсам. Эти ядра являются одной из главных причин, по которым видеокарты перешли от потребления энергии из слота PCIe x16 к тому, чтобы стать пожирателями энергии, потребляя больше энергии, чем вся недорогая система при полной нагрузке. Это проблема, которую необходимо тщательно решать, потому что по мере развития технологий мы должны переходить на более производительное, но менее ресурсоемкое оборудование.

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

Upscaler Unreal Engine 5 очень похож на DLSS от Nvidia, за исключением того, что он может работать на любом оборудовании, от консолей до систем на базе Linux. Lumen также в значительной степени использует отражения экранного пространства на очень требовательных поверхностях, таких как ветровые стекла и зеркала автомобилей.

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

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