Microsoft анонсировала новую функцию, которая сократит время начальной загрузки в играх, называемую Advanced Shader Delivery. Согласно блогу разработчиков DirectX, функция перенесёт компиляцию шейдеров с устройства пользователя в облако, что позволит загружать необходимые файлы непосредственно на устройство для кэширования.
Обзор смартфона HONOR 400: реаниматор
Пять причин полюбить HONOR 400
Обзор ноутбука Acer Swift Go 14 (SFG14-63-R7T4) с процессором Ryzen 9 8945HS и OLED-экраном
HUAWEI Pura 80 Ultra глазами фотографа
Обзор смартфона HUAWEI Pura 80 Ultra: зум, которому нет равных
Обзор рейтингового режима Warface: просто освоиться, сложно оторваться
Помимо значительного ускорения запуска игры — Microsoft в качестве примера приводит игру Avowed, где время загрузки было сокращено на 85 % — функция Advanced Shader Delivery также экономит заряд батареи и вычислительную мощность ноутбуков и портативных игровых устройств, отмечает компания.
Компиляция шейдеров традиционно выполняется на устройстве, поскольку процесс учитывает настройки игры, а также видеокарту и версию драйвера, которые используются в системе. Это означает, что производительность компиляции шейдеров зависит от установленного на устройство пользователя программного и аппаратного обеспечения. Учитывая практически бесконечное количество вариаций систем, разработчикам было практически невозможно предварительно скомпилировать шейдеры для каждого устройства. Однако Microsoft изменила подход к компиляции шейдеров, создав новый формат под названием State Object Database (SODB).
Компания собирает данные шейдеров из игры и упаковывает их в SODB. Разработчики DirectX совместно с производителями видеокарт разработали метод разделения компилятора шейдеров от графического драйвера, что позволило объединить его с SODB и создать базу данных предкомпилированных шейдеров (PSDB). При загрузке игры через приложение Xbox PC приложение определит конфигурацию системы пользователя и подтянет соответствующую базу PSDB. Таким образом, при первом запуске игры приложение обнаружит предустановленные шейдеры и пропустит длительный процесс компиляции.
Предположительно, эта функция будет работать даже после обновления драйвера или при замене видеокарты, поскольку приложение Xbox PC должно отслеживать любые изменения на устройстве и загружать необходимую базу PSDB для той или иной игры. Но если система уникальна, и у Microsoft ещё нет PSDB для неё (например, используется бета-версия драйвера), компьютер будет компилировать шейдеры самостоятельно.
Функция Advanced Shader Delivery дебютирует на портативных консолях Asus ROG Xbox Ally и Ally X, выпуск которых запланирован на 16 октября. Microsoft намекает, что в будущем она появится и на других платформах. На данный момент Advanced Shader Delivery не требует дополнительных усилий от разработчиков игр, поскольку весь процесс компиляции выполняется на серверах Xbox. Тем не менее, Microsoft заявляет, что планирует сотрудничать с другими участниками игровой индустрии для интеграции передовых технологий доставки шейдеров непосредственно в игровые движки, что избавит геймеров от длительной загрузки, но также усилит зависимость пользователей от онлайн-сервисов Xbox.