27.1.2020

Тест API Vulkan на РС

Рады сообщить, что в рамках обновления 4.3 начнем тестирование первой PC-версии игры с поддержкой API Vulkan.
Для использования API Vulkan в Rainbow Six Осада при запуске нажмите соответствующую кнопку. Вы сможете выбрать либо DirectX 11, либо Vulkan.

ПОЧЕМУ VULKAN

API Vulkan даст Rainbow Six Осада преимущества по сравнению с DirectX 11, что позволит улучшить функционал игры в нескольких аспектах.

Если вкратце, с Vulkan разработчики получат возможность применять динамическое индексирование текстур для снижения нагрузки на центральный процессор (далее — ЦП), а динамическую настройку разрешения и технологию Async Compute — для снижения нагрузки на графический процессор (далее — ГП). Эти функции уже используются на консолях, а с API Vulkan они появятся и на РС.
__Объединив их, мы сможем оптимизировать работу ЦП и ГП при прорисовке. __

Для заинтересованных в технических деталях ниже приведена более подробная информация об этих функциях и эффекте, который они окажут на РС-версию. Для обеспечения корректной работы API Vulkan ознакомьтесь с разделом «ВАЖНАЯ ИНФОРМАЦИЯ».

Содержание
VULKAN, DIRECTX 11 и API
ТЕСТИРОВАНИЕ VULKAN В RAINBOW SIX ОСАДА
ТЕХНИЧЕСКИЕ ДЕТАЛИ
---Динамическое индексирование текстур
---Render Target Aliasing и динамическое масштабирование
---Async Compute
ВАЖНАЯ ИНФОРМАЦИЯ
---Графические драйверы: обновите драйверы!
---Аппаратная поддержка
---Превышение лимита видеопамяти

VULKAN, DIRECTX 11 И API

Vulkan и DirectX 11 — графические программные интерфейсы приложения, или графические API. Они служат связующим звеном между Rainbow Six Осада (или любой другой игрой) и ГП.

[R6S] Vulkan API Graphic

В играх и других приложениях с большим объемом графических операций ЦП и ГП работают параллельно, и максимальная частота кадров определяется самым медленным из них — все зависит от аппаратного обеспечения. Игроки могут частично контролировать этот параметр, изменяя настройки графики для уменьшения нагрузки на ГП, но производительность все равно будет ограничена одним из процессоров.

И вот где имеет значение выбор API: подходящий интерфейс позволяет снизить нагрузку и повысить производительность. Некоторые API — например, Vulkan — эффективнее задействуют аппаратное обеспечение, и потому нагрузка на ЦП снижается. Иными словами, они несколько усложняют программисту процесс написания кода, но в то же время дают больше возможностей.

Сейчас в Rainbow Six Осада используется DirectX 11 — API, выпущенный более 10 лет назад. Он все еще позволяет добиться приличной производительности, но при этом графический драйвер серьезно нагружает ЦП. Более того, некоторые функции, поддерживаемые современными ГП, несовместимы со старыми API вроде DirectX 11. (Мы рассматривали вариант с DirectX 12, но по результатам внутренних тестов производительности ЦП отдали предпочтение Vulkan.)

Преимущества Vulkan позволяют снизить нагрузку на ЦП и ГП и добавить поддержку новых функций, которые в будущем могут открыть дополнительные возможности.

ТЕСТИРОВАНИЕ VULKAN В RAINBOW SIX ОСАДА

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

Он будет внедрен уже в обновлении 4.3 для PC. Такой тест позволит оценить взаимодействие Vulkan с разнообразным аппаратным обеспечением, получить данные от более широкой аудитории и понять, осталась ли стабильность работы на том же уровне или даже выросла. Учтите, что процесс настройки Vulkan в Rainbow Six Осада еще продолжается, так что некоторые игроки могут не заметить изменений или даже наблюдать снижение производительности после запуска обновления. Наша задача — оптимизировать работу нового интерфейса, чтобы повысить эффективность обработки графики.

Итог

API Vulkan даст Rainbow Six Осада преимущества по сравнению с DirectX 11, что позволит повысить эффективность обработки графики. Более того, современный графический интерфейс поможет снизить нагрузку на ЦП и ГП, а также активировать дополнительные функции, которые в будущем откроют для разработчиков новые возможности. С обновлением 4.3 Vulkan подвергнут расширенному тестированию в РС-версии игры.

Для использования API Vulkan в Rainbow Six Осада при запуске нажмите соответствующую кнопку. Вы сможете выбрать либо DirectX 11, либо Vulkan.

[R6S] Vulkan DX gif

Не забудьте ОБНОВИТЬ ГРАФИЧЕСКИЕ ДРАЙВЕРЫ! Для лучших результатов: Обновление Nvidia441.87, обновление AMD 20.1.4, обновление Intel 26.20.100.7755 или новейшие версии.


ТЕХНИЧЕСКИЕ ДЕТАЛИ

API Vulkan создан для того, чтобы максимально приблизиться к аппаратному уровню.
При его использовании в «Осаде» станут доступны три современные функции, улучшающие производительность:

  • Динамическое индексирование текстур (также известное как «bindless rendering»)
  • Render Target Aliasing
  • Async Compute

Динамическое индексирование текстур (или «bindless rendering»)

НАЗНАЧЕНИЕ:
Динамическое индексирование текстур помогает снизить нагрузку на ЦП за счет уменьшения количества вызовов прорисовки (draw calls) (запрос графическому интерфейсу на прорисовку объекта, который появится на экране). Оно достигается благодаря тому, что ГП динамически выбирает текстуру, используемую в шейдере, вместо того чтобы привязать ее с помощью ЦП. В результате уменьшается количество обращений к драйверу и снижается нагрузка на процессор.

ОЖИДАЕМЫЙ РЕЗУЛЬТАТ:
Благодаря API Vulkan и динамическому индексированию текстур должна повыситься частота кадров при игре на компьютерах, производительность которых ограничена пропускной способностью ЦП.

Render Target Aliasing и динамическое масштабирование

НАЗНАЧЕНИЕ:
Render Target Aliasing позволит использовать в РС-версии динамическое масштабирование, изменяющее разрешение в зависимости от нагрузки на ГП. Игроки смогут выбрать желаемую частоту кадров, а игра автоматически подстроит разрешение для достижения этого результата и таким образом стабилизирует работу игры на компьютерах, производительность которых ограничена пропускной способностью ГП.

ОЖИДАЕМЫЙ РЕЗУЛЬТАТ:
С момента запуска в «Осаде» применялись разные методы масштабирования с использованием временного сглаживания. Игроки на РС могут выбрать в игре разрешение, отличное от аналогичного параметра монитора, что позволяет отрисовать изображение в более низком разрешении, а затем увеличить его до размера экрана с помощью временного масштабирования. Временное масштабирование — качественный метод, за счет которого можно добиться эффективного сглаживания с низким размытием, а заодно и повышения производительности.

Мы надеемся, что совмещение динамического масштабирования и временного сглаживания поможет увеличить частоту кадров и стабилизировать работу игры на компьютерах, производительность которых ограничена пропускной способностью ГП.

Async Compute

НАЗНАЧЕНИЕ:
Async Compute — технология аппаратного обеспечения, позволяющая ГП выполнять задачи параллельно, что дает возможность добиться лучшей оптимизации. С момента запуска «Осады» Async Compute применялась на консолях для повышения производительности при использовании эффектов отражений и объемного света. Видеокарты поддерживали эту технологию, но мы не могли задействовать ее из-за DX11. Благодаря API Vulkan это станет возможным.


ВАЖНАЯ ИНФОРМАЦИЯ

__Графические драйверы:ОБНОВИТЕ ДРАЙВЕРЫ ВАШЕЙ ГРАФИЧЕСКОЙ КАРТЫ. (Обновление Nvidia441.87, обновление AMD 20.1.4, обновление Intel 26.20.100.7755 или новейшие версии). Последние пару месяцев мы совместно с Nvidia, AMD и Intel занимались оптимизацией работы драйверов в «Осаде». Чтобы добиться максимальной производительности, обязательно установите их последние версии (если используются старые, вы получите предупреждение).

Аппаратная поддержка:
К сожалению, некоторые старые модели видеокарт не поддерживают API Vulkan.

  • Nvidia: Vulkan поддерживают видеокарты с микроархитектурой Kepler (серия GTX 6) и новее. То есть, подойдут ГП на базе Kepler, Maxwell, Pascal и Turing. Любые модели Nvidia, выпущенные после 2012 года, должны отвечать требованиям. (List of Nvidia GPUs)
  • AMD: Vulkan поддерживают видеокарты с микроархитектурой GCN1 (серия Radeon HD 77XX) или новее. Любые модели AMD, выпущенные после 2012 года, должны отвечать требованиям. (List of AMD GPUs)
  • Intel: Vulkan поддерживают видеокарты с микроархитектурой Gen9 (в основном серии Core IX-6XXX и Intel HD Graphic 5XX) и новее. Любые модели Intel, выпущенные после 2015 года, должны отвечать требованиям. (List of Intel GPUs)

Превышение лимита видеопамяти:
Одно из преимуществ драйверов на базе DirectX 11 — отличный контроль превышения лимита видеопамяти. В случае с Vulkan оно может вызвать зависания и даже прекращение работы игры. В связи с этим для обеспечения стабильности игрокам потребуется внимательно следить за расчетными объемами потребления памяти в меню настроек графики. При превышении будет отображаться соответствующее предупреждение. Чтобы избежать такой ситуации, стоит снизить качество текстур и/или разрешение игры — параметры, оказывающие самое сильное влияние на производительность.

Мы предлагаем РС-игрокам запустить игру с поддержкой Vulkan, чтобы результаты тестов могли быть максимально обширными. Делитесь отзывами в social media, на R6 subreddit, и forums!

Посетите наши соцсети

twitter iconyoutube icontwitch icon