Каманда Wine выпусціла VKD3D 2.0 - буйны рэліз бібліятэкі, якая рэалізуе працу прыкладанняў з Direct3d 12 па-над Vulkan. VKD3D выкарыстоўваецца ў звычайным upstream Wine для падтрымкі D3D12-прыкладанняў; яго не варта блытаць з VKD3D-Proton, асобнай гульнявой галінкай 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-Proton, а не звычайны VKD3D. Тым не менш VKD3D застаецца важнай часткай самага Wine і служыць базавай рэалізацыяй Direct3D 12 па-над Vulkan у upstream-праекце.

Крыніца: linux.org.ru

Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы 🔥 Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы | ProHoster