Теги → variable rate shading

В 3DMark появился более продвинутый метод Variable-Rate Shading

Оптимизация и повышение производительности — ключевая задача в играх, ведь они исполняются в реальном времени. С этой целью Microsoft на мартовском мероприятии GDC 2019 представила Variable-Rate Shading (VRS), которая стала частью API DirectX 12. Она аналогична технологии NVIDIA Adaptive Shading и призвана снизить нагрузку при просчёте периферийных объектов и зон (например, однородного моря или тумана) с помощью снижения точности проводимых вычислений. До сих пор 3DMark позволял сравнить разницу в производительности и качестве изображения при использовании Tier 1 Variable-Rate Shading. Тест работал по простому принципу: те объекты изображения, которые ближе к пользователю, вычислялись с более высокой точностью, а дальние — с более низкой.

3DMark, VRS Tier 2 включён

3DMark, VRS Tier 2 включён

Теперь команда UL Benchmarks добавила новую опцию, позволяющую использовать более универсальную и сложную форму VRS с помощью Tier 2 Variable-Rate Shading. В DirectX есть два уровня поддержки VRS: в Tier 1 разработчики могут указывать различную точность расчётов для каждого вызова отрисовки, а Tier 2 добавляет больше гибкости и контроля, позволяя использовать разную точность внутри каждого вызова отрисовки.

3DMark, VRS Tier 2 отключён

3DMark, VRS Tier 2 отключён

В новом тесте VRS Tier 2 в 3DMark более низкая точность расчётов используется для тех областей, где контрастность между соседними пикселями меньше: например, в областях в тенях или с меньшим количеством деталей. Функциональный тест 3DMark VRS выполняется в два этапа. VRS отключается при первом прохождении теста, чтобы получить эталон для сравнения. Во втором проходе применяется VRS. Затем тест сообщает среднюю частоту кадров для каждого прохода и вычисляет выигрыш в производительности, полученный благодаря VRS.

Функциональный тест VRS также предлагает интерактивный режим, который позволяет на лету изменять настройки VRS, чтобы увидеть, как они влияют на частоту кадров и качество изображения. Удобная опция визуализатора показывает, в каких местах используется тот или иной уровень точности. Например, на приведённом скриншоте белым отмечены области точности 1×1, жёлтым — 1×2 или 2×1, оранжевым — 2×2, розовым — 2×4 или 4×2 и фиолетовым — 4×4:

Как сообщают разработчики, для работы Variable-Rate Shading требуется Windows 10 1903 или более поздняя и совместимый ускоритель. Tier 1 VRS поддерживают ГП NVIDIA Turing и графика в Intel Ice Lake, а Tier 2 VRS в настоящее время можно исполнять только на NVIDIA Turing.

3DMark уже позволяет тестировать эффективность Variable-Rate Shading

В июле Futuremark сообщила о разработке нового функционального теста 3DMark, призванного тестировать эффективность технологии Variable-Rate Shading. Функциональные тесты 3DMark призваны показать влияние конкретных технологий, методов и возможностей в специализированных задачах. Таковыми, например, выступают тест для оценки сглаживания NVIDIA DLSS, 3DMark API Overhead для оценки эффективности низкоуровневых API или 3DMark PCI Express 4.0 для демонстрации преимущества нового интерфейса.

Оптимизация и повышение производительности в играх — ключевая задача. С этой целью Microsoft на мартовском мероприятии GDC 2019 представила Variable-Rate Shading, которая стала частью API DirectX 12. Она аналогична технологии NVIDIA Adaptive Shading и призвана снизить нагрузку при просчёте периферийных объектов и зон (например, однородного моря или тумана) с помощью снижения точности проводимых вычислений.

DMark VRS позволяет сравнить разницу в производительности и качестве изображения при использовании Tier 1 Variable-Rate Shading. Для вычисления цвета каждого пикселя на экране вызываются шейдеры. Показатель Shading rate указывает разрешение, в котором эти шейдеры просчитываются (оно не всегда равно разрешению экрана). Чем выше Shading rate, тем выше точность и нагрузка на ГП, и наоборот. Обычно оно для всей картинки одинаково, так что все пиксели кадра рассчитываются с одинаковым качеством. VRS позволяет разбивать кадр на блоки и для каждого из них указывать разные значения Shading rate: например, снижать точность для пикселей, которые находятся в глубоких тенях, вдали от камеры или на периферии, вне фокуса внимания игрока. За счёт этого можно существенно повысить частоту кадров, незначительно потеряв в визуальном качестве.

Функциональный тест 3DMark VRS работает в два прохода. В первом VRS не используется, чтобы создать базовую картинку для сравнения. А при втором прохождении уже применяется Variable-Rate Shading. Благодаря VRS операция с единичным пиксельным шейдером может быть применена к блоку пикселей: например для просчёта блока пикселей 4 × 4 одной операцией, а не 16 отдельными. В 3DMark VRS показатель Rate Shading зависит от расстояния до камеры: для самых дальних объектов включается VRS 4 × 4, 2 × 2 для геометрии на среднем расстоянии и наиболее качественный 1 × 1 — для ближайших объектов переднего плана.

Для запуска теста необходима платформа Windows 10 в версии 1903 и ускоритель с поддержкой DirectX 12, поддерживающий Tier 1 VRS и AdditionalShadingRatesSupported: например, видеокарта семейства NVIDIA Turing или встроенная графика в процессорах Intel Ice Lake. В настоящее время приобрести 3DMark Advanced Edition можно со скидкой в 75 % в Steam. Тест VRS будет частью бесплатного обновления пакета для 3DMark Advanced Edition или 3DMark Professional Edition с действующей годовой лицензией.

Скоро 3DMark позволит тестировать эффективность Variable-Rate Shading

Одной из самых важных задач при разработке игры выступает оптимизация для повышения производительности без существенной потери качества. Поэтому Microsoft на мартовском мероприятии GDC 2019 представила Variable-Rate Shading, которая стала частью API DirectX 12. Вначале аналогичную технологию продвигала NVIDIA под именем Adaptive Shading — она позволяет снизить нагрузку при просчёте периферийных объектов и зон с помощью снижения точности проводимых вычислений. При этом технология позволяет повышать детализацию там, где это необходимо.

VRS (слева) позволила в этой сцене Civilization VI повысить производительность на 14 % при одинаковом качестве.

VRS (слева) позволила в этой сцене Civilization VI повысить производительность на 14 % при одинаковом качестве.

Для вычисления цвета каждого пикселя на экране вызываются шейдеры. Показатель Shading rate указывает разрешение, в котором эти шейдеры просчитываются (оно не всегда равно разрешению экрана). Чем выше Shading rate, тем выше точность и нагрузка на ГП, и наоборот. Традиционно разработчики указывают единое значение Shading rate, так что все пиксели кадра рассчитываются с одинаковым качеством, но проблема в том, что не все они одинаково важны. Эту проблему и призвана решить VRS, разбивающая кадр на блоки, для каждого из которых разработчики могут использовать разные значения Shading rate: например, для пикселей, которые находятся в глубоких тенях, вдали от камеры или на периферии, вне фокуса внимания игрока. За счёт этого можно существенно повысить частоту кадров, незначительно потеряв в визуальном качестве.

Civilization VI с применением VRS — красные области показывают зоны, в которых Shading rate установлен в режим 1 × 1, а синие — 2 × 2

Civilization VI с применением VRS: красные области — зоны, в которых Shading rate установлен в режим 1 × 1, а синие — 2 × 2

Ещё на GDC 2019 ряд компаний, в том числе Turn 10 Studios, Ubisoft, Massive Entertainment, 343 Industries, Stardock, IO Interactive, Activision и Epic Games, заявили, что внедрят в свои проекты Variable-Rate Shading. Также поддержкой технологий обзавелись графические ускорители NVIDIA Turing и Intel Gen11, а AMD запатентовала такой подход ещё в 2017 году. В общем, в будущих играх и консолях поддержка VRS будет едва ли не обязательной. Особенно растёт важность в подобных подходах ввиду распространения экранов высокого разрешения 4K и в перспективе 8K, а также виртуальной реальности — благодаря отслеживанию взгляда система может снижать разрешение рендеринга к периферии, где человеческое зрение улавливает лишь общие детали.

VRS на движке Unreal Engine 4 в сцене Sun Temple на прототипе ускорителя Intel Gen11

VRS на движке Unreal Engine 4 в сцене Sun Temple на прототипе ускорителя Intel Gen11

Но как же сравнивать эффективность работы видеокарт в этом перспективном режиме? UL Benchmarks решила помочь с этой задачей, представив функциональный тест 3DMark Variable-Rate Shading. Функциональные тесты 3DMark призваны показать влияние конкретных технологий, методов и возможностей в специализированных задачах. Таковыми, например, выступают тест для оценки сглаживания NVIDIA DLSS, 3DMark API Overhead для оценки эффективности низкоуровневых API или 3DMark PCI Express 4.0 для демонстрации преимущества нового интерфейса.

Функциональный тест 3DMark VRS предназначен для сравнения производительности и качества изображения при использовании Variable-Rate Shading. Тест также предлагает интерактивный режим для экспериментов с различными настройками VRS и возможность экспорта кадров для детального сравнения. Сцена представляет собой лес с китайскими фонариками. В первом проходе VRS не используется, чтобы создать базовую картинку для сравнения.

Скриншот 3DMark VRS без VRS

Скриншот 3DMark без VRS

Скриншот 3DMark с VRS

Скриншот 3DMark с VRS

А при втором прохождении уже применяется Variable-Rate Shading. Благодаря VRS операция с единичным пиксельным шейдером может быть применена к блоку пикселей: например для затенения блока пикселей 4 × 4 одной операцией, а не 16 отдельными. В 3DMark VRS показатель Rate Shading зависит от расстояния до камеры: для самых дальних объектов включается VRS 4 × 4 (синие области на изображении), 2 × 2 для геометрии на среднем расстоянии (зелёные области) и наиболее качественный 1 × 1 (красные области) — для ближайших объектов переднего плана.

Скриншот 3DMark VRS с визуализацией областей с разным уровнем качества VRS

Скриншот 3DMark VRS с визуализацией областей с разным уровнем качества VRS

Тест VRS станет частью пакета 3DMark уже 26 августа. Он будет доступен в виде бесплатного обновления для 3DMark Advanced Edition и для пользователей 3DMark Professional Edition с действующей годовой лицензией.

В DirectX 12 добавлена поддержка Variable Rate Shading

Одной из главных задач игростроя и программирования в целом является оптимизация без существенной потери качества. Потому в своё время появилась куча кодеков для аудио и видео, которые обеспечивали сжатие, сохраняя приемлемые показатели. А теперь компания Microsoft представила своё решение аналогичного характера для игр.

На мероприятии Game Developers Conference 2019 корпорация из Редмонда объявила о реализации технологии Variable Rate Shading, которая входит в API DirectX 12. Эта технология является функциональным аналогом NVIDIA Adaptive Shading и предназначена для экономии ресурсов видеокарты. Это позволяет снизить нагрузку при просчёте периферийных объектов и зон. При этом технология позволяет повышать детализацию там, где это необходимо.

В результате такая технология повышает производительность в игре без заметной потери качества изображения. В ходе презентации компания показала работу технологии в игре Civilization VI. Как отмечается, кадровая частота в левой части изображения оказалась на 14 % выше, чем в правой при одинаковом качестве.

Ряд компаний, в том числе Turn 10 Studios, Ubisoft, Massive Entertainment, 343 Industries, Stardock, IO Interactive, Activision и Epic Games, уже заявили, что внедрят в свои проекты Variable Rate Shading. При этом в Редмонде заявили, что технология поддерживается картами NVIDIA на архитектуре Turing и будущим семейством Intel Gen11. Также не исключено, что VRS будут поддерживать и будущие дискретные карты Intel, хотя явно этого пока не говорили. А ранее появлялись слухи о поддержке технологии в GPU поколения Navi и игровых next-gen-консолях.

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

window-new
Soft
Hard
Тренды 🔥