Wine 9.0 биринчи релиз талапкеринде тестирлөө башталды, WinAPI ачык ишке ашырылды. Код базасы январдын экинчи жарымында күтүлүп жаткан релизге чейин тоңдурулган фазага киргизилген. Wine 8.21 чыккандан бери 52 мүчүлүштүк тууралуу отчет жабылып, 391 өзгөртүү киргизилген.
Эң маанилүү өзгөрүүлөр:
- Vulkan графикалык API'ге чалууларды которуу аркылуу иштеген Direct3D 3 ишке киргизилген vkd12d пакети 1.10 версиясына жаңыртылган.
- XWayland жана X11 компоненттерин колдонбостон Wayland протоколуна негизделген чөйрөдө Шарапты колдонуу мүмкүнчүлүгүн ишке ашырууга багытталган функцияларды өнүктүрүү улантылды. winewayland.drv драйверинде клавиатура макеттери үчүн кошумча колдоо. Vulkan графикалык API колдоо кеңейтилди жана vkQueuePresentKHR, vkGetDeviceGroupSurfacePresentModesKHR, vkGetPhysicalDevicePresentRectanglesKHR функциялары кошулду. ClipCursor функциясы кошулду жана чычкандын кыймылына көз салууда салыштырмалуу координаттар менен иштөө мүмкүнчүлүгү ишке ашты.
- GnuTLS акыркы релиздерин колдонууда, DH (Diffie-Hellman) шифрлөө ачкычтарын колдоо ишке ашырылган.
- Тиркемелердин иштешине байланыштуу жабык ката отчеттору: Notepad, MS Word, Roon, eFilm Workstation 2.x/3.x, Athena's Charm Table Search 0.35b, Process Explorer, Araxis Merge 2023.5877, Framemaker 8, Internet Download Manager, Air Jura , SpeedCommander, ModOrganizer, RestoreDC, Acid-V VST плагини, MIDITrail 1.4.0.
- Оюндардын иштешине байланыштуу ката отчеттору жабык: For Honor, STEEP, Far Cry 5, NFS Most Wanted, Castlevania: Lords of Shadow 2, Eurobattle, Daily Chthonicle, Crimson Skies.
Кошумчалай кетсек, Vulkan графикалык API'ге чалууларды которуу аркылуу Direct3D 1.10 ишке ашыруу менен vkd3d 12 пакетинин Wine долбоору тарабынан жарыяланганын белгилей кетсек болот. Пакетке Direct3D 3 ишке ашыруулары менен libvkd12d китепканалары, 3 жана 4 шэйдер моделдеринин котормочусу бар libvkd5d-shader жана Direct3D 3 тиркемелерин көчүрүүнү жөнөкөйлөтүү функциялары бар libvkd12d-utils, ошондой эле портту камтыган демо мисалдардын топтому камтылган. of glxgears Direct3D 12. Долбоордун коду LGPLv2.1 лицензиясы менен бөлүштүрүлгөн.
libvkd3d китепканасы Direct3D 12 функцияларынын көбүн колдойт, анын ичинде графика жана эсептөө каражаттары, кезектер жана буйрук тизмелери, туткалары жана үймөк туткалары, түпкү кол тамгалар, иштен чыгуу мүмкүнчүлүгү, Үлгүлөр, буйрук кол тамгалары, тамыр константалары, кыйыр көрсөтүү, Тазалоо ыкмалары *( ) жана Көчүрүү*(). libvkd3d-shader 4 жана 5-шейдер моделдеринин байткодун SPIR-V аралык өкүлчүлүгүнө которууну ишке ашырат. Чокусун, пикселди, тесселляцияны, эсептөө жана жөнөкөй геометриялык шейдерлерди, тамыр кол тамгасын сериялаштыруу жана сериялаштыруу колдойт. Шейдер инструкцияларына арифметикалык, атомдук жана биттик операциялар, салыштыруу жана маалымат агымын башкаруу операторлору, үлгүлөрдү алуу, чогултуу жана жүктөө инструкциялары, иретсиз кирүү операциялары (UAV, Unordered Access View) кирет.
Жаңы версия DirectX 9.0ден баштап берилген HLSL (Жогорку деңгээлдеги Шейдер тили)деги шейдер компиляторун жакшыртууну улантууда: массивдерди динамикалык индекстөө үчүн кошумча колдоо; "үзүү", "улантуу" жана "которуу" деген сөздөр кошулган; туруктуу конволюция колдонула турган сөз айкаштары кеңейтилди; ceil(), derece(), radians(), fwidth(), tan(), tex2Dlod(), tex2Dproj(), texCUBEproj() жана tex3Dproj() орнотулган функциялар ишке ашырылган.
libvkd3d китепканасына жаңы Direct3D 12 программалоо интерфейстери (ID3D12Device5, ID3D12GraphicsCommandList5 жана ID3D12Resource1) кошулду жана куурдун абалынын объекттерин түзүү мүмкүнчүлүгү ишке ашырылды. libvkd3d-utils үчүн DXBC манипуляциясы үчүн кошумча функциялар кошулду: D3DGetBlobPart(), D3DGetDebugInfo(), D3DGetInputAndOutputSignatureBlob(), D3DGetInputSignatureBlob(), D3DGetOutputSignatureBlob(), D3DGetOutputSignatureBlob(D3DGetOutputSignatureBlob). "—фрагмент-координата-оригин" жана "-семантикалык-компат-карта" параметрлери vkdXNUMXd-компилятордун компиляторуна кошулду.
Source: opennet.ru
