Microsoft робить його простішим для доставки DirectX 12 Games до Windo

Microsoft робить його простішим для доставки DirectX 12 Games до Windo

Коли Microsoft запустила Windows 10, вона зрозуміла свою позицію на DirectX 12: Windows 10 буде єдиною ОС, яка підтримує останній API компанії, період. Роками компанія дотримувалася такої позиції. Тоді, на початку цього року, Microsoft оголосила, що одній грі - World of Warcraft - буде дозволено користуватися API DX12 під час роботи Windows 7.

Причина цієї надбавки? Можливо, Китай. World of Warcraft завжди мала величезну китайську послідовність, і рішення Blizzard додати підтримку DX12 до WoW було важливим кроком як для розробника, так і для API. Тепер Microsoft оголосила, що розширює цю програму. У короткому дописі в блозі, що вказує на масив документів API, Microsoft зазначає:

Ми отримали теплий прийом від ігрового співтовариства, і ми продовжили співпрацювати з кількома ігровими студіями, щоб далі оцінити цю роботу. Щоб краще підтримувати розробників ігор на великих масштабах, ми публікуємо наступні ресурси, щоб дозволити розробникам ігор запускати свої ігри DirectX 12 на Windows 7.

Документ із вказівки щодо розробки способів переміщення DX12 до Windows 7 насправді містить корисну інформацію про те, як важко отримати ігри, які працюють під старшою ОС, і які відмінності між ними. Microsoft заявляє:

Ми лише перенесли час виконання D3D12 в Windows 7. Тому різниця графічного ядра, знайдена в Windows 7, все ще потребує деяких змін ігрового коду, головним чином, навколо коду презентаційного коду, використання парканів, що відслідковуються, та управління резиденцій пам'яті (все це буде докладніше нижче). Ранні користувачі повідомили про те, щоб їхні ігри на D3D12 працювали на ОС Windows 7 від кількох днів до двох тижнів, хоча реальна інженерна робота, необхідна для вашої гри, може відрізнятися.

Існують технічні відмінності між DX12 в Windows 7 і DX12 в Windows 10. DirectML (Direct Machine Learning) не підтримується в Windows 7, але всі інші функції, реалізовані в оновленнях Windows 10 жовтня 2018 року, підтримуються. Існують відмінності щодо використання API (D3D12 в Windows 7 використовує різні існуючі API), а деякі схеми використання забору також не підтримуються.

Однак існують деякі обмеження на підтримку. Підтримується лише 64-розрядна Windows 7 із встановленим SP1. У Windows 7 немає налагоджувального шару PIX або D3D12, немає спільних поверхонь чи взаємозв'язку між API, немає підтримки SLI / LDA, немає відео D3D12 і не підтримується WARP. За словами Microsoft, «підтримка HDR є ортогональною для D3D12 і вимагає функцій DXGI / ядро / DWM в Windows 10, але не в Windows 7.» Це, мабуть, означає, що вміст HDR може працювати в Windows 7, але розробнику він може належним чином виконайте це.

Microsoft опублікувала додаткові ресурси по цій темі, включаючи пакет NuGet і зразок коду D3D12, який працює в Windows 7 і 10 з тим самим бінарним файлом.

Чому зробити DX12 більш доступним?

Це, чесно кажучи, трохи дивно. Передбачається, що Windows 7 буде спрямована на тверде вибуття протягом декількох місяців. Сенс тут полягає в тому, що Microsoft робить цей крок для задоволення геймерів, які все ще використовують Windows 7, однак опитування апаратних засобів Steam передбачає, що це явна меншість гравців. За даними SHS, Windows 10 має 71,57-відсоткову частку ринку, тоді як Windows 7 64-розрядна прив’язана до 20,4 відсотка. Тут цікаво те, що SHS насправді нахиляє набагато більше до Windows 10, ніж загальне опитування ОС.

Microsoft робить його простішим для доставки DirectX 12 Games до Windo

Зовсім не ясно, як Microsoft буде вирішувати цю проблему, оскільки це стосується загальної підтримки, але може бути, що це спосіб Microsoft забезпечити певну ступінь зворотної сумісності, не бажаючи робити щось еквівалентне настільки, наскільки це триває для забезпечення функцій безпеки. Майкрософт хоче, щоб його клієнтська база - все це - Windows 10. Це дивно, коли компанія розширила DX12 назад, але ми були б приголомшені, якби вони надали Windows 7 час відшкодування і продовжували публікувати виправлення для неї.

МС можуть також сподіватися заохотити розробників до більш широкого впровадження DX12. Через три роки після дебюту ні DX12, ні Vulkan не зробили багато для революції в API та іграх. Розробники використовують API, але ми бачимо порівняно мало їх використання, щоб витягти щось унікальне. Необхідність підтримки старішої апаратури та широкого кола користувачів, а також те, що ці API вимагають від розробників більш ознайомлення з базовим обладнанням, здається, є тяжким для загального використання.