ВКД3Д 2.0

Команда Wine випустила ВКД3Д 2.0 - Великий реліз бібліотеки, що реалізує роботу додатків з Direct3D 12 поверх Vulkan. VKD3D використовується у звичайному upstream Wine для підтримки D3D12-додатків; його не слід плутати з VKD3D-Протон, окремою ігровою гілкою Valve, що застосовується в Proton/Steam Play.

Проект поширюється під ліцензією GNU Lesser General Public License 2.1 або пізнішої версії. Вихідний код релізу опубліковано на сервері WineHQ, також код доступний через репозиторії Wine.

VKD3D 2.0 став переходом з гілки 1.19 одразу на нову мажорну версію. Основний акцент зроблено на розвитку шейдерної підсистеми та низькорівневої сумісності з Direct3D 12.

Ключові зміни:

  • Поліпшено обробку HLSL-шейдерів. Розширено підтримку мови HLSL: реалізовано більше операцій, які тепер коректно обробляються компілятором та транслятором VKD3D. Це важливо для запуску додатків, які використовують власні HLSL-шейдери, а не лише заздалегідь скомпільований байткод.

  • Доопрацьовано підтримку legacy Direct3D bytecode. Покращено роботу зі старим типом вихідного байткоду Direct3D для сумісності зі старими шейдерними форматами та інструментами, які все ще зустрічаються в додатках та двигунах.

  • Поліпшено роботу з DXIL. У VKD3D 2.0 продовжено доопрацювання обробки DXIL - сучасного проміжного представлення шейдерів DirectX. Для D3D12 це один із ключових форматів, тому такі зміни безпосередньо впливають на коректність запуску нових програм.

  • Додані покращення для effects. До релізу увійшли зміни, пов'язані з effects — механізмами опису та застосування графічних ефектів у Direct3D-стеку. Це скоріше інфраструктурна частина, але вона важлива сумісності з існуючим графічним кодом.

  • З'явилася експериментальна підтримка MSL. VKD3D 2.0 отримав експериментальну підтримку генерації MSL - Metal Shading Language. Цей напрямок пов'язаний із переносимістю шейдерної частини на платформи, де Vulkan зазвичай використовується через додаткові шари сумісності.

  • Розширені інтерфейси та налагоджувальні можливості. Розробники додали нові інтерфейси та покращили засоби налагодження VKD3D, що має спростити розробку, діагностику помилок та подальший розвиток підтримки Direct3D 12 у Wine.

Окремо варто наголосити: для більшості користувачів Steam на Linux головним D3D12-компонентом залишається VKD3D-Протон, а чи не звичайний VKD3D. Проте VKD3D залишається важливою частиною самого Wine і є базовою реалізацією Direct3D 12 поверх Vulkan в upstream-проекті.

Джерело: linux.org.ru

Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери 🔥 Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери | ProHoster