> > > > Battlefield V рассчитывает 15-40% сцены через трассировку лучей

Battlefield V рассчитывает 15-40% сцены через трассировку лучей

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

battlefieldvНаши тесты Battlefield V с активной поддержкой RTX через DXR показали следующее: отражения, полученные через трассировку лучей, визуально впечатляют, но "съедают" порядка 50% производительности, частота кадров снижается соответствующим образом.

Сразу же было понятно, что мы имеем дело с ранней реализацией. Иногда отражения, рассчитанные с помощью трассировки лучей, оказывались скрыты из поля зрения геймера. Кроме того, настройки качества DXR между "Low" и "Ultra" оставались весьма "сырыми" и не всегда корректно работали.

Интервью с инженером рендеринга Ясином Улудагом (Yasin Uludağ), который потратил примерно год в DICE на реализацию эффектов трассировки лучей, пролило часть света на техническую реализацию. Настройка качества DXR влияет на эффекты двояко.

1. В зависимости от настройки, только определенная часть кадра рассчитывается через трассировку лучей.
2. В зависимости от настройки, в расчет включаются только поверхности, соответствующие определенным критериям отражения.

Ниже приведено более подробное описание настроек качества DXR.

  • Low: 15% разрешения рассчитывается через трассировку лучей. Глянцевые поверхности с коэффициентом 0,9 и меньше не рассчитываются.
  • Average: 23,3% разрешения рассчитывается через трассировку лучей. Глянцевые поверхности с коэффициентом 0,9 и меньше не рассчитываются.
  • High: 31,6% разрешения рассчитывается через трассировку лучей. Глянцевые поверхности с коэффициентом 0,5 и меньше не рассчитываются
  • Ultra: 40% разрешения рассчитывается через трассировку лучей. Глянцевые поверхности с коэффициентом 0,5 и меньше не рассчитываются

Коэффициент рассчитывается 3D-движком как свойство поверхности между 0,0 и 1,0. 0,0 соответствует абсолютно матовой поверхности, 0,2 - сухой асфальтовой дороге, 1,0 - зеркалу.

Так что DICE использовала данный коэффициент для определения поверхностей, к которым будет применяться трассировка лучей. Ниже представлены скриншоты с разным значением DXR: Low (слева) и Ultra (справа). Действительно можно видеть, что рассчитывается разное число поверхностей.

Но более важно количество лучей в виде процента от разрешения. Если взять 40% от разрешения при настройке Ultra DXR, то для UHD (3.840 x 2.160 пикселей) мы получим порядка 3,3 млн. лучей.

Сложность вычислений трассировки лучей
Настройка DXR LowMediumHighUltra
1.920 x 1.080 311.040 лучей484.148 лучей655.257 лучей830.000 лучей
2.560 x 1.440 552.960 лучей858.931 лучей1.164.902 лучей1.474.560 лучей
3.840 x 2.1601.244.160 лучей1.932.592 лучей2.6.21.030 лучей3.317.760 лучей

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

Лучше всего это видно на сцене, где поверхность воды занимает половину кадра. Ядра Tensor должны обеспечить контент для пикселей, которые не были рассчитаны. Но это оказывается возможным лишь до определенной степени, алгоритм начинает сбоить, когда не удается рассчитать слишком много лучей. Что видно по слишком большому количеству шума на поверхности воды под двумя кранами.

Возможные ограничения трассировки лучей

Еще раз отметим, что отражения в Battlefield V выводят игру на новый визуальный уровень качества. Даже без эффектов DXR картинка в Battlefield V смотрится отлично. Другой вопрос, так ли важны отражения. Но следует понимать, что различные графические эффекты дополняют друг друга, и в итоге мы получаем суммарный результат. Выделять какие-либо отдельные эффекты на общем фоне вряд ли разумно. В отдельной статье мы уже разобрали, как именно трассировка лучей сказывается на отдельных сценах.

Игра Battlefield V демонстрирует возможности эффектов DXR, но вместе с тем и ограничения технологии, причина здесь кроется в видеокартах. Современные системы показывают в два раза меньшую частоту кадров при включении эффектов DXR, причем реализация DXR при этом остается ограниченной. Разработчикам приходится ограничивать число поверхностей и объектов, которые рассчитываются через трассировку лучей, как и общее число лучей на кадр. Причем мы по-прежнему говорим об одном луче или семпле на пиксель. Конечно, было бы куда лучше получить несколько семплов на пиксель, но здесь сказываются аппаратные ограничения.

От проблемы первой реализации никуда не деться. DXR пока удается реализовать лишь частично, и не все эффекты освещения доступны. В Battlefield V разработчикам пришлось ограничиться отражениями, в Metro Redux акцент поставлен на глобальное освещение. Ни одна игра первого поколения не сможет дать все возможные эффекты DXR. Это просто нереалистично с точки зрения производительности.

В ближайшие месяцы будет понятно, в каком направлении продолжат развиваться технологии DXR/RTX. NVIDIA наверняка продолжит совершенствовать свои видеокарты, следующие за Turing архитектуры продолжат наращивать число ядер RT и Tensor. Смогут ли они дать достаточную производительность для игр в разрешении 3.840 x 2.160 пикселей с высокими настройками DXR - неизвестно. Но разработчики наверняка продолжат интегрировать все больше эффектов DXR. В ближайшие месяцы наверняка придется смириться с компромиссным балансом между качеством реализации DXR и доступной производительностью.