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

Но всички тези иновации си струват.

Съвременните игри се нуждаят от десетки гигабайта данни, за да изобразят тези красиви герои и среди. Но някои инструменти, използвани от разработчиците на игри, не са създадени, за да се справят с такова огромно количество данни, създавайки пречка за производителността.

Тук идва Microsoft DirectStorage.

Защо се нуждаем от Microsoft DirectStorage?

Преди да обсъдим DirectStorage, нека да видим как работят настоящите методи за поточно предаване на данни.

Когато стартирате игра, тя се нуждае от данни като текстури, модели на персонажи и аудио, за да ви ги представи на екрана. Тези данни се съхраняват на устройство за съхранение като твърд диск. Играта изисква тези данни чрез софтуерни инструменти, известни като Приложни програмни интерфейси (API).

След като играта поиска данните чрез API, тя извлича данните от устройството за съхранение и ги поставя в системната RAM, преди да ги предаде на графичния процесор за рендиране.

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

Така че след като данните са в RAM, те отиват в процесора за декомпресия.

След декомпресия данните, които играта иска, се копират във VRAM на графичния процесор.

И накрая, графичният процесор прави тези данни в красиви графики, които виждаме на дисплея.

Сега този метод за стрийминг има два основни недостатъка.

Първо, декомпресирането на данни отнема много време. Това не само води до увеличаване на времето за зареждане на играта, но и прави процесора недостъпен за други задачи. И тъй като процесорът е застигнат от декомпресия през повечето време, той не може да се справи с изискванията на графичния процесор, което води до по-ниски честоти на кадрите.

Второ, съществуващите API за съхранение не се възползват напълно от модерния хардуер за съхранение. Например устройствата за съхранение през деня бяха бавни механични твърди дискове, които не разполагаха със скорост и честотна лента за изпращане на гигабайта данни в секунда. И така, приложните програмни интерфейси (API) са написани, за да предават само ограничено количество данни.

Разработчиците, които използват тези стари API днес, трябва да заобиколят този ограничен бюджет за поточно предаване на данни, като използват методи като намаляване на сложността на сцената, за да минимизират нуждата от много активи, само визуализиране на текстури и среда, която играчът може да види, и увеличаване на времето за зареждане, за да се уверите, че играта има достатъчно време да зареди всички активи преди стартиране.

Тези методи работят по-добре на теория, отколкото на практика. Тъй като дори и с най-бързите устройства за съхранение на пазара, игрите все още имат дълги времена за зареждане, изскачащи текстури и тесни разстояния за изтегляне.

DirectStorage има за цел да помогне на разработчиците да разрешат тези проблеми чрез по-добър процес на поточно предаване на данни.

Свързани: Най-добрите инструменти за овърклок на GPU за подобрена игрална производителност

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

Microsoft DirectStorage е набор от API за съхранение, които имат за цел да поправят всичко погрешно с текущите API.

Когато разработчик извиква API на DirectStorage, за да поиска данни от устройството за съхранение, процесът е почти същият с две основни разлики.

Първо, след копиране на данните в RAM, няма рутинна декомпресия на процесора. Данните не се копират в процесора и се декомпресират. За разлика от старите API, компресираните данни се изпращат директно към графичния процесор.

Второ, API-тата се възползват в пълна степен от супер бързия хардуер на NVMe SSD. DirectStorage се нуждае от NVMe SSD, за да работи, тъй като NVMe SSD дисковете имат експоненциално по-висока честотна лента от механичните твърди дискове. DirectStorage използва пълната честотна лента на тези SSD, която е от порядъка на GB / s, за да чете много данни наведнъж. Това е за разлика от по-старите API, които четат данни бавно и в порядъка на MB / s.

И така, графичният процесор получава много компресирани данни наведнъж и не е нужно да чака, докато пристигнат повече данни, преди да се изобрази. Единственото, което остава да направите, е да декомпресирате данните, които графичният процесор да изобрази.

DirectStorage пакети в най-съвременните техники за декомпресия на GPU. Графичните процесори декомпресират данните с много по-висока скорост от процесорите. Те могат също така да поддържат тази високоскоростна декомпресия за дълго време, което CPU не може. Това е, което прави графичния процесор основен кандидат за бъдещето на декомпресия на данни.

Разтоварването на декомпресията към графичния процесор също освобождава процесора за обработка на други задачи като обработка на аудио и подготовка на кадри за показване.

Как DirectStorage подобрява игрите?

Тъй като DirectStorage предоставя невероятно бързо на вашия GPU много данни, той може да революционизира вашето игрово изживяване.

Първо, ако разработчиците създадат своите игри с DirectStorage, игрите ще имат почти моментално време за зареждане. Така че, няма да се налага да чакате, за да прекарате дълъг екран за зареждане, за да влезете в любимата си игра.

На второ място, тъй като DirectStorage освобождава процесора за обработка на други задачи, това увеличава производителността. С други думи, ще го направите получите по-добри честоти на кадрите, дори ако не сте надстроили хардуера си.

И накрая, с DirectStorage, игрите ще имат по-обширни и сложни светове с минимално изскачане на текстура. Това ще позволи на разработчиците да създадат следващото поколение игри, без да задържат креативната си визия поради опасения за поточно предаване на данни.

DirectStorage може да промени игрите за добро, ако разработчиците го позволят

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

Ако DirectStorage успее да се превърне в индустриален стандарт, игрите ще преминат в нова ера на потапяне.

Ако Microsoft може да усъвършенства DirectStorage и да убеди разработчиците, че си струва да инвестират времето си в него, геймърите най-накрая могат да бъдат освободени от досади като време за зареждане и изскачащи текстури.

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

електронна поща
Висока честота на кадрите срещу По-добра резолюция: Какво е по-важно за игрите?

Ако не можете да си позволите настройка на игри от висок клас, ще трябва да разберете компромисите между високите честоти на кадрите и високите резолюции при игри.

Прочетете Напред

Свързани теми
  • Windows
  • Игри
  • Microsoft
  • Разработване на игри
  • Компютърни игри
За автора
Фавад Муртаза (Публикувани 13 статии)

Fawad е щатен писател на свободна практика. Той обича технологиите и храната. Когато не яде или не пише за Windows, той или играе видео игри, или пише за странния си блог Techsava.

Още от Фавад Муртаза

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!

Още една стъпка…!

Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.

.