Чтобы создавать реалистичные миры и вселенные, играм требуется большое количество данных. При этом их необходимо загрузить из системы хранения в оперативную память, чтобы процессор работал с оптимальной производительностью. Но из-за ограничений традиционных жёстких дисков и конвейера ввода-вывода, геймдизайнерам часто приходится создавать узкие проходы, коридоры и лифты, маскирующие необходимость выгрузить из памяти данные предыдущей локации и загрузить в неё ресурсы следующей. Для решения этих проблем Microsoft разработала технологию Xbox Velocity Architecture для Xbox Series X.
Xbox Velocity Architecture переосмысляет традиционную подсистему ввода-вывода, что оказало влияние на другие аспекты Xbox Series X. Технология состоит из четырёх компонентов: NVMe SSD, блоков распаковки с аппаратным ускорением, нового слоя DirectStorage API и Sampler Feedback Streaming (SFS). Рассмотрим их подробнее:
- Фундаментом Xbox Velocity Architecture является NVMe SSD ёмкостью 1 ТБ с пропускной способностью более 2,4 Гбайт/с в операциях ввода-вывода, что более чем в 40 раз больше, чем у Xbox One. Данный накопитель разработан для обеспечения постоянной и стабильной производительности, не снижающейся, например, при росте температуры. Таким образом, разработчики могут ориентироваться на гарантированный уровень производительности и оптимизировать свои игры без нынешних ограничений.
- Игровые данные и ресурсы находятся в сжатом виде, чтобы игры загружались быстрее и занимали меньше места на накопителе. Аппаратное ускорение распаковки поддерживает стандартные в индустрии LZ-файлы и специальный проприетарный алгоритм BCPack для сжатия текстур. Именно текстуры составляют значительную часть объёма игры, так что аппаратное ускорение распаковки позволит разработчикам применять более продвинутые режимы сжатия, чтобы сэкономить дополнительное место без ущерба качеству и производительности.
- Базовые API для ввода-вывода стандартных файлов были разработаны более 30 лет назад, и с тех пор практически не менялись. Учитывая переход консолей на SSD, Microsoft добавила новый DirectStorage API для DirectX, который позволит разработчикам организовать несколько очередей ввода-вывода, настроить приоритеты и снизить задержки при этом процессе. Доступ к низкоуровневому API предоставит разработчикам полную мощность устройства в операциях ввода-вывода, что избавит игры от долгих загрузок и сделает системы быстрого перемещения действительно быстрыми.
- Sampler Feedback Streaming (SFS) — ещё одна инновация Xbox Velocity Architecture. Игровые текстуры оптимизируются по методу MIP, когда во время рендеринга загружается одна из копий текстуры объекта с нужным уровнем детализации. При приближении игрока к объекту возрастает и разрешение текстуры. Однако крупные MIP-текстуры занимают много памяти, а разработчикам приходится загружать её полностью, даже если требуется лишь небольшой фрагмент. Технология Sampler Feedback Streaming позволяет загружать только часть MIP-уровня текстуры, что повышает эффективность конвейера ввода-вывода и использования памяти в среднем в 2,5 раза.
Все эти технологии пользволяют Xbox Series X демонстрировать производительность, выходящую далеко за пределы чистой производительности аппаратного обеспечения консоли. «Эти инновации откроют новую страницу игровых ощущений, обеспечат глубину и погружение в игры, каких вы не испытывали прежде», — заявляют в Microsoft.