Новый графический режим RT Overdrive — революция или очередная попытка продать побольше топовых видеокарт?
CD Projekt RED любит технологии «на вырост», добавляя в свои игры то, что большинство геймеров смогут увидеть, только сменив пару поколений видеокарт. Например, в The Witcher 2 была настройка Ubersampling, которая рендерила сцену несколько раз и хитро фильтровала для получения лучшего изображения. Но по факту просто обрушивала частоту кадров.
The Witcher 3 годами использовали как бенчмарк производительности, особенно для процессоров. А в Cyberpunk 2077 до сих пор нельзя нормально играть на максимальных настройках с трассировкой лучей даже на топовых компьютерах, если не использовать «костыли» DLSS или FSR.
Неудивительно, что CD Projekt RED решила добить наши компьютеры и добавила в Cyberpunk 2077 экспериментальный режим расчёта освещения — трассировку пути (от английского «path tracing» или PT). Даже GeForce RTX 4090 при включении этой опции выдает в 4K максимум 15 кадров в секунду.
Но зачем? С одной стороны, чтобы продвигать топовые видеокарты Nvidia, которая является технологическим партнером CD Projekt RED. Но не только.
Мы уже писали про трассировку путей. С точки зрения создания освещения, это Святой Грааль. Буквально симуляция фотонов света — серьезное ускорение расчета движения и отражения лучей.
Из-за высоких требований даже в киноиндустрии трассировку пути начали использовать совсем недавно. При том, что для фильмов спецэффекты рендерят не на отдельных компьютерах, а на гигантских серверах — рендер-фермах.
Мы уже видели игры с PT-освещением — Quake II RTX, Portal with RTX и Minecraft RTX, а также PT-моды — Quake: Ray Traced и Half-Life: Ray Traced. В них можно играть практически на любой современной видеокарте с аппаратным ускорением трассировки лучей.
Но, в отличие от Cyberpunk 2077, это старые игры, которые на современном железе могут работать со скоростью в сотни кадров в секунду. А вот польский ролевой экшен спустя два года после выхода остается одной из самых красивых и требовательных игр современности. Рендерить уровни Half-Life гораздо проще — в моделях окружения меньше полигонов, чем в одной только фаре Porsche Джонни Сильверхэнда.
Чем новые эффекты трассировки лучше тех, что уже были в игре раньше? Как и другие разработчики до нее, CDPR использовала трассировку лучей для создания отдельных элементов освещения — отражений, теней, базового глобального освещения. Трассировка путей заменяет отдельные симуляции на одну глобальную.
Обычно в играх, чтобы сделать из каждой лампочки в локации источник света, а не просто яркую текстуру, необходимо вручную «прикрепить» к ней соответствующую функцию. Это требует ручного труда программистов. И если таких лампочек много, это дорого и с точки зрения разработки, и с точки требований к железу. Чаще всего отдельные светильники в кадре или не являются источником света для других объектов и не формируют тени, или получают одну упрощенную функцию на всех.
RTXDI превращает все лампочки и даже светящиеся текстуры (диоды на костюмах и оружие, экраны и другие подобные объекты) в физически корректные источники света. Объекты в таком случае отбрасывают тени и полутени от любого числа подобных источников света.
Частично это было реализовано еще раньше при настройках RT Psycho, но теперь игра полностью обрабатывает освещение при помощи трассировки путей — разница местами очень заметна.
Изначальный метод использовал обычное растровое освещение, которое требовало ручного труда десятков художников и программистов, а уже поверх него добавлял эффекты трассировки.
Затенение фонового освещения проверяет прямые источники света (на картинке это лампочка на потолке лифта) и затеняет свет, отраженный от желтых стен, который художник поставил вручную. Поэтому на скриншоте лицо Джеки с RT Psycho темнее, чем просто на максималках.
При включении RT Overdrive движок игры просчитывает и прямой свет от лампочки, и его отражения от желтых стен, поэтому Джеки лучше освещен и окрашен в теплые тона. Выглядит не так драматично, зато куда достовернее.
Одно из самых заметных отличий Overdrive — вторичные и третичные отражения света. В Night City многие поверхности окрашены в яркие цвета — преимущественно оранжевый или синий. Окружающие объекты, освещенные отраженным светом, приобретают соответствующий оттенок.
Непрямой отраженный свет был в играх и ранее. Mirror’s Edge — отличный пример «запеченного» освещения, статичного, но красивого и достоверного. Assassin’s Creed Unity, в свою очередь, демонстрировала динамическое глобальное освещение, которое использовало сильную упрощенную информацию о свете только от солнца и неба.
Это неплохо работало для модели Франции конца XVIII века — с соответствующей высотой зданий и плотностью застройки. Но оба метода не будут полноценно работать в динамическом мире Cyberpunk 2077, где абсолютно на всех поверхностях есть лампочки и экраны, а время суток и положение солнца меняется даже во время большинства сюжетных квестов.
На ультра-настройках без трассировки игра использует схожую с Assassin’s Creed Unity систему — в редакторе запекается усредненная информация о локации. Учитывается освещение от солнца и неба, а когда движок игры не находит прямых источников, то берет информацию из зондов освещения (Global Illumination Probe, GI-зонд), которые «разбросаны» по сцене. В Cyberpunk 2077 их довольно много для такой большой игры, но все равно недостаточно — иногда освещение выглядит плоским и неестественным.
CDPR использовала неидеальные гибридные методы для исправления этой проблемы. На RT Psycho игра просчитывает одно отражение лучей от солнца и неба, но если луч не находит ни того, ни другого, то снова берется информация из упрощенного GI-зонда.
При этом RTAO (трассированное затенение фонового освещения, Ray-Traced Ambient Occlusion) пытается «заткнуть дыры» в таком упрощенном освещении, затеняя углы. Зачастую это делает сцену гораздо темнее, чем она должна быть. Дополнительно на скриншоте красный свет снизу просачивается сквозь стены и освещает балкон, хотя в реальности в таких условиях это было бы невозможно.
RT Overdrive изменяет яркость многих источников света, чтобы они визуально соответствовали силе света, который излучают. Небо выглядит гораздо светлее, чем раньше, а дальние тени, наоборот, глубже и темнее. При этом исчезает ошибочно окрашенный отраженный свет.
Трассировка путей полностью заменяет затенение фонового освещения, которое на пресете Ultra без трассировки просто изображает эти тени в дальних углах — на стыке между полом и балконом, — но не меняет общую картину и не исправляет неправильный оттенок.
Глобальное освещение вместе с отличными физически корректными материалами создают буквально фотореалистичные изображения. Если персонажам пока не хватает детализации и сложных эффектов вроде реалистичного подповерхностного рассеивания, то автомобили, мебель и какие-нибудь мусорные мешки выглядят как на настоящих фотографиях.
Местами игра почти не изменилась. В ней уже были светящиеся текстуры, трассированные тени, простое RTGI (трассированное глобальное освещение, Ray Traced Global Illumination) и множество человеко-часов, потраченных, чтобы основные сюжетные локации выглядели хорошо даже на не самом новом железе.
Качество трассированных отражений на прозрачных поверхностях вроде воды и стекла тоже не особо изменилось. Но теперь они обновляются в реальном времени без задержек: раньше они были отдельным эффектом, а сейчас включены в общую цепочку отрисовки.
Показать на скриншотах это, к сожалению, не выйдет. Зато отлично видна разница со стандартными отражениями в экранном пространстве, которые не отражают объекты за пределами экрана.
Режим RT Overdrive пока еще в бета-тесте, поэтому не исключено, что CD Projekt RED добавит более реалистичные отражения для прозрачных и полупрозрачных поверхностей позднее. Зато уже сейчас они расчитываются в полном разрешении, а не в 50%, как раньше.
Изменение теней в новом режиме Overdrive лучше всего заметно на растительности. Обычные карты теней ради оптимизации ограничены по минимальному размеру объекта, а тени в экранном пространстве работают с артефактами. У теней с трассировкой путей нет таких проблем, поэтому каждый листик и каждая веточка на дереве получают собственную реалистичную тень. Это придает растениям невероятно реалистичный вид.
При этом наличие теней не зависит от расстояния. При растеризации кусты не отбрасывают тени вообще. При установке RT Psycho пострадал городок в центре кадра. Зато при включении RT Overdrive затенение есть даже за окнами длинного дома в центре кадра.
Другое важное изменение — все источники света теперь отбрасывают тени. Это практически неслыханно для современных игр, потому что очень сильно нагружает даже самые мощные видеокарты. В мире Cyberpunk 2077, где светится даже бампер автомобиля и банка с колой на прилавке, это было бы просто невозможно.
Но трассировке путей практически все равно, сколько источников света в 3D-сцене. Каждый источник света отбрасывает идеальные тени, которые прилегают к объектам с попиксельной точностью.
В Cyberpunk 2077 есть множество мест с некорректным освещением. Как и во многих играх с открытым миром. К сожалению, упрощения неизбежны в таких больших играх, и иногда в финальной версии остаются текстуры с ошибками. Здесь старая модель глобального освещения создает уродливые резкие куски теней — но с Overdrive они полностью пропадают и заменяются реалистичным затенением.
К сожалению, цена всей этой красоты высока. Даже на GeForce RTX 4090 в 4К игра работает с «кинематографическим» фреймрейтом около 22 кадров в секунду.
Владельцам видеокарт AMD повезло еще меньше — в 4K при включенном масштабировании FSR 2.0 Balanced игра работает со скоростью всего 9 FPS. И это на топовой Radeon RX 7900 XTX.
Но уже сейчас у большинства пользователей есть возможность увидеть самую современную графику даже на офисном ноутбуке. Нужны лишь доступ в интернет и подписка на облачный сервис VK Play Cloud. Расположенные по всей России серверы могут транслировать на любой компьютер видеопоток игры, запущенной на мощном железе с высокими или максимальными настройками. Поддерживаются любые игры из популярных лаунчеров — от Steam и EGS до Battle.Net и EA App.Достаточно выбрать подходящий тариф, купить игру в любом магазине и запустить ее согласно инструкции.
Для ускорения настолько сложных вычислений CD Projekt RED использует все новые фишки NVIDIA GeForce RTX 40-й серии вроде Shader Execution Reordering (динамически упорядочивает нагрузки при операциях с шейдерами). А самое главное — DLSS 3.0 Frame Generation. При помощи генерации кадров на RTX 4080 можно достичь практически стабильных 60 FPS в разрешении 4К с предустановкой DLSS Performance.
А DLSS Ultra Performance хоть и создает ощутимые артефакты, но позволит играть даже видеокартах GeForce RTX 20-й серии. Системные требования, конечно, не демократичные. Но это своего рода превью графики, которая появится в большинстве крупных блокбастеров уже через несколько лет.
RT Overdrive — взгляд в будущее игровой графики через замочную скважину. Cyberpunk 2077 великолепно выглядит в этом режиме, но когда технология станет повсеместной, его современные модели, текстуры, физика, анимации будут казаться такими же устаревшими, как Half-Life 2. А вот освещение будет мейнстримом.