Что такое Microsoft DirectStorage? Как сделать игры быстрее?

Раньше игры не были очень сложными. Игровые уровни были довольно маленькими, персонажей немного, а текстуры простыми. С годами игры значительно улучшились. От огромных открытых миров до детализированных персонажей - игры могут казаться очень реалистичными.

Но все эти инновации имеют свою цену. Вот список Лучшие игры с открытым исходным кодом, в которые можно играть бесплатно.

Современные игры нуждаются в десятках гигабайт данных, чтобы передать тех красивых персонажей и окружение, которые вы видите на своем экране. Но некоторые инструменты, которые используют разработчики игр, не предназначены для обработки такого огромного количества данных, что приводит к снижению производительности.

Вот где на первый план выходит Microsoft DirectStorage.

Что такое Microsoft DirectStorage? Как сделать игры быстрее? - Статьи

Зачем нам может понадобиться Microsoft DirectStorage?

Прежде чем мы обсудим, что может предложить DirectStorage, давайте посмотрим, как работают существующие методы потоковой передачи данных.

Когда вы играете в игру, она требует большого количества данных, таких как текстуры, модели персонажей и звук, которые будут представлены вам на экране. Эти данные хранятся на запоминающем устройстве, таком как жесткий диск. Игра запрашивает эти данные с помощью программных инструментов, известных как интерфейсы прикладного программирования (API).

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

Когда вы загружаете игру, все данные сжимаются, чтобы сэкономить как можно больше места. Но графические процессоры не могут использовать сжатые данные. Следовательно, он должен быть распакован.

Таким образом, как только данные попадают в ОЗУ, они отправляются в ЦП для распаковки.

После декомпрессии необходимые данные из игры копируются в видеопамять (VRAM) для графического процессора.

Наконец, графический процессор преобразует эти данные в красивую графику, которую мы видим на экране.

Что такое Microsoft DirectStorage? Как сделать игры быстрее? - Статьи

Теперь у этого способа вещания есть два основных недостатка.

Во-первых, распаковка данных занимает много времени. Это не только увеличивает время загрузки игры, но и делает процессор недоступным для других задач. А поскольку процессор большую часть времени изо всех сил пытается снять нагрузку, он не справляется с требованиями графического процессора, что приводит к снижению частоты кадров.

Во-вторых, текущие API-интерфейсы хранилища не используют в полной мере преимущества современных устройств хранения. Например, ранее устройства хранения были медленными механическими жесткими дисками, у которых не было скорости и пропускной способности для отправки гигабайт данных в секунду. Поэтому API-интерфейсы разработаны для передачи только ограниченного объема данных.

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

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

Вот почему DirectStorage стремится помочь разработчикам решить эти проблемы с помощью более качественной потоковой передачи данных.

Как работает Microsoft DirectStorage?

Microsoft DirectStorage - это набор API-интерфейсов хранилища, предназначенный для исправления всех ошибок в существующих API-интерфейсах.

Когда разработчик вызывает API-интерфейсы DirectStorage для запроса данных с устройства хранения, процесс примерно такой же с двумя основными отличиями.

Что такое Microsoft DirectStorage? Как сделать игры быстрее? - Статьи

Во-первых, после копирования данных в ОЗУ ЦП не выполняет процедуры декомпрессии. Данные не копируются в ЦП и не распаковываются. В отличие от устаревших API, сжатые данные отправляются непосредственно в графический процессор.

Во-вторых, API-интерфейсы в полной мере используют преимущества сверхбыстрого оборудования NVMe SSD. Поскольку DirectStorage требует для работы твердотельный накопитель NVMe, твердотельные накопители NVMe имеют значительно более высокую пропускную способность, чем механические жесткие диски (HDD). DirectStorage использует всю пропускную способность этих твердотельных накопителей, порядка гигабайт в секунду, для одновременного чтения большого количества данных. Это контрастирует с устаревшими API-интерфейсами, которые считывают данные медленно и со скоростью порядка мегабайт в секунду.

Таким образом, графический процессор получает сразу много сжатых данных, и ему не нужно ждать поступления дополнительных данных перед их отображением. Осталось только распаковать данные для отображения графическим процессором.

DirectStorage содержит новейшую технологию декомпрессии графического процессора. Графические процессоры распаковывают данные с гораздо большей скоростью, чем процессоры. Он также может поддерживать это сжатие с высокой скоростью в течение длительного времени, чего не может ЦП. Это делает GPU главным кандидатом на будущее декомпрессии данных.

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

Как DirectStorage улучшает игры?

Что такое Microsoft DirectStorage? Как сделать игры быстрее? - Статьи

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

Во-первых, если разработчики создают свои игры с использованием DirectStorage, игры загружаются практически мгновенно. Таким образом, вам не нужно ждать и сидеть на длинном экране загрузки, чтобы перейти к своей любимой игре.

Во-вторых, поскольку DirectStorage освобождает ЦП для обработки других задач, это увеличивает общую производительность. Другими словами, вы получите лучшую частоту кадров, даже если не обновите свое оборудование.

Наконец, с DirectStorage игры будут иметь более обширные и сложные миры с минимальным количеством всплывающих окон. Это позволит разработчикам создавать игры следующего поколения, не мешая их творческому видению из-за проблем с потоковой передачей данных. Вы можете проверить Лучшие способы повысить производительность в играх на ноутбуке с Windows 10.

DirectStorage может навсегда изменить игры

Microsoft агрессивно продвигает DirectStorage. И она, безусловно, права. Старые способы передачи данных являются узким местом для игр.

Если DirectStorage сможет стать отраслевым стандартом, игры перейдут в новую эру погружения.

Если Microsoft сможет освоить DirectStorage и убедить разработчиков в том, что на его использование стоит потратить свое время, геймеры, наконец, смогут избавиться от любых неприятностей, таких как время загрузки и всплывающие окна с текстурами.

Так что будем надеяться, что мы увидим день, когда не будет фальшивых поездок на лифтах, бесконечных лестниц и быстрых путешествий на миллион лет. Ты можешь видеть Как исправить проблемы с играми с низким FPS в Windows.

Перейти к верхней кнопке