Ашық бастапқы кодты Win32 API іске асыруының эксперименттік нұсқасы Wine 11.17 шығарылды. 11.16 шығарылғаннан бері 44 қате туралы есеп жабылды және 387 өзгеріс енгізілді.
Ең маңызды өзгерістер:
- Экран режиміндегі эмуляцияға бастапқы қолдау қосылды, бұл толық экранды қолданбалар мен ойындардың өздерінің виртуалды ажыратымдылығында жұмыс істеуіне мүмкіндік береді, ол нақты көрсету кезінде монитордың DPI негізінде масштабталады. Мысалы, ескі ойын 640x480 ажыратымдылығын пайдалануы мүмкін, бірақ арақатынасын сақтай отырып, жоғары ажыратымдылықтағы экранда көрсетілуі мүмкін.
- Тұтас жүйе мен жеке пайдаланушылар үшін тізілімде конфигурацияланған және жергілікті параметрлер негізінде әдепкі бойынша жасалған қалаулы интерфейс тілдерінің тізімін алуға арналған RtlGetSystemPreferredUILanguages және RtlGetUserPreferredUILanguages функцияларына қолдау қосылды. Сондай-ақ, процесс және ағын деңгейінде қалаулы тілдердің тізімін анықтау және орнатуға арналған RtlGetProcessPreferredUILanguages, SetProcessPreferredUILanguages, RtlGetSetThreadPreferredUILanguages және SetThreadPreferredUILanguages функциялары қосылды.
- Direct3D 3 енгізуі бар кірістірілген Vkd12d бумасы 2.1 нұсқасына жаңартылды.
- Келесі қолданбаларға қатысты жабық қате туралы есептер: certmgr.exe, Signtools, Advanced SystemCare 6.4, Autodesk 3ds Max 9, SketchUp 2021, Nokia S60 5th Edition SDK 1.0, PDFCreator, SafeDisc v2.05.030, Bigrats, PTC Pro Engineer Wildfire V5, VisualSubSync 1.0.2.1, PS4 Remote Play 2.x, MigrosBank EBanking 8.2.x, Sparda Bank SecureApp 1.x, MSXML 6.0, Sennheiser Wireless Systems Manager 4.4, Netscape Navigator 3.04, xEdit.
- Ойындардың жұмысына қатысты жабық қате туралы есептер: GTA: Vice City, GTA: San Andreas, Tetris JR, Worms Blast, Horizon Chase Turbo, Star Wars: Knights of the Old Republic I/II, GunBound, Marathon, Ground Control, Ankh — Anniversary Edition, Clive Barker's Jericho.
Сонымен қатар, шарапқа қатысты жобалардың жаңа шығарылымдарын атап өтуге болады:
- Wine Staging 11.17 шығарылды, ол негізгі Wine тармағына интеграциялауға әлі жарамсыз толық емес немесе қауіпті патчтарды қамтитын кеңейтілген Wine құрастырылымдарын ұсынады. Wine-мен салыстырғанда, Wine Staging қосымша 279 патч ұсынады. Жаңа Wine Staging шығарылымы Wine 11.17 код базасымен синхрондалады және vkd3d кодын жаңартады. kernel32.dll кітапханасында SetThreadpoolTimerEx функциясын іске асыратын патч негізгі Wine дистрибутивіне портталды.
- Мен Vulkan графикалық API-ге қоңырау аудармасы арқылы жұмыс істейтін Direct3D 12 іске асыруы vkd3d 2.1 шығардым. Пакетке Direct3D 12 іске асыруы бар libvkd3d кітапханасы, шейдерлік модель аудармашысы бар libvkd3d-shader және Direct3D 12 қолданбаларын порттауды жеңілдетуге арналған функциялары бар libvkd3d-utils кіреді. Оған сондай-ақ glxgears портын Direct3D 12-ге қоса алғанда, демонстрациялар жиынтығы кіреді. libvkd3d кітапханасы графика және есептеу құралдары, кезектер мен команда тізімдері, дескрипторлар мен үйінді дескрипторлары, түбірлік қолтаңбалар, ретсіз қатынау, үлгілеушілер, командалық қолтаңбалар, түбірлік тұрақтылар, жанама көрсету және Clear*() және Copy*() әдістерін қоса алғанда, Direct3D 12 мүмкіндіктерінің көпшілігін қолдайды. libvkd3d-shader шейдерлік модельдің байткодын SPIR-V аралық көрінісіне аударуды жүзеге асырады.
vkd3d жаңа нұсқасында:
- HLSL шейдер тілінің іске асырылуы 4 және 5 шейдер модельдерін пайдаланған кезде «жартылай» типті арифметикалық операцияларды қолдау үшін жаңартылды.
- HLSL шейдер компиляторы кіріс және шығыс деректерін тексеруді күшейтті және 1-3 шейдер модельдерінде пайдаланылмаған жаһандық айнымалыларды (біркелкі формаларды) жоюға рұқсатты енгізді.
- GLSL (OpenGL Shading Language) сервері кіріс регистрлерін жанама түрде адрестеуді, атомдық салыстыруды және бүтін сандарды қосу операцияларын, биттік операциялар мен кедергілерді, UAV (Uraned Access View) үшін жүктеу/сақтау операцияларын және ағын тобының ортақ жадын қолдайды.
- Direct3D екілік шейдер пішімін қолдау жақсартылды. "sub" және "break_cmp" нұсқаулары, "_x2", "_x4", "_x8", "_d2", "_d4" және "_d8" нұсқаулық модификаторлары, сондай-ақ "_bias", "_x2" және "_bx2" операнд модификаторлары енгізілді.
- SPIR-V шейдерлерінің аралық көрінісіне түрлендіру кезінде, қалқымалы нүктелі сандарды 64-биттік бүтін сандарға түрлендіру операцияларына қолдау қосылды.
- Libvkd3d-utils шейдерлік рефлексия API үшін кеңейтілген қолдауды ұсынады. ID3D10ShaderReflection, ID3D10ShaderReflection1 және ID3D11ShaderReflection интерфейстері, сондай-ақ ID3D12ShaderReflection және ID3D12ShaderReflectionType интерфейстерінің көптеген әдістері ендірілді.
- vkd3d-compiler файлына "--allow-half-globals" опциясы және libvkd3d-shader файлына "half" типті жаһандық айнымалыларды "float" типті айнымалыларға компиляциялау үшін VKD3D_SHADER_COMPILE_OPTION_BACKCOMPAT_ALLOW_HALF_GLOBALS жалаушасы қосылды.
- DXVK 3.1 шығарылды, ол DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 және 11 бағдарламаларының іске асырылуын қамтамасыз етеді, Vulkan API-ға қоңырауларды аудару арқылы жұмыс істейді. DXVK пайдалану үшін NVIDIA 575.51.02, Mesa AMD RADV 25.0, NVIDIA 25.1 және Intel ANV 25.1 сияқты Vulkan 1.4 API қолдайтын драйверлер қажет. DXVK 3D қолданбалары мен ойындарын іске қосу үшін пайдаланылуы мүмкін... Linux Wine пайдаланып, OpenGL үстінде жұмыс істейтін Wine кіріктірілген Direct3D іске асыруларына жоғары өнімді балама ретінде қызмет етеді.
Жаңа нұсқада:
- DXGI бағдарламасында VK_KHR_incremental_present Vulkan кеңейтімін пайдаланып жүзеге асырылған инкрементальды рендерингке қолдау қосылды. Бұл тек экранның өзгерген аймақтарын жаңартуға мүмкіндік береді. Бұл жаңа мүмкіндік VirtualDJ және Ubisoft Connect сияқты әртүрлі ойын іске қосу құрылғыларындағы рендеринг мәселелерін шешеді.
- Battlefield 3 сияқты кейбір Frostbite негізіндегі ойындарда бұлттық рендеринг артефактілерімен байланысты мәселелерді шешкен тікелей буферлерде рендеринг мақсатты көріністерін жасауға қолдау қосылды.
- Intel GPU-ға тән кеңейтімдерді (сатушы кеңейтімдерін) қолдау үшін кітапханаларды жүктеу жүзеге асырылды.
- Mabinogi, The Witcher 1, Ghost Recon Breakpoint, Mirrors Edge және RaceRoom Racing Experience ойындарындағы мәселелер шешілді.
- D7VK 2.2 жобасы шығарылды, ол Microsoft компаниясы 1996, 1997, 1998 және 1999 жылдары ұсынған Direct3D 3, 5, 6 және 7 графикалық API интерфейстерін енгізуді әзірлейді. D7VK Vulkan API-ға шақыруларды аудару арқылы жұмыс істейді және сізге іске қосуға мүмкіндік береді Linux Direct3D 3, 5, 6 және 7 API негізіндегі ретро ойындар. Жоба коды C++ тілінде жазылған және Zlib лицензиясы бойынша таратылған. Әзірлеу DXVK жобасынан алынған d3d9 сервер кодына негізделген. D7VK Direct3D 3, 5, 6 және 7 API-лерін Direct3D 9 шақыруларына түрлендіреді, содан кейін олар Vulkan API-іне аударылады. Әзірлеуші Vulkan-ның үстіне орнатылған Direct3D 8 және Direct3D 9 іске асыруларындағыдай DXVK-ға D7VK қосуды көздемейді.
Жаңа нұсқа 3.1 DXVK нұсқасына ауысады, D3D3 құрылғылары үшін D3D3 орындалатын буферін тексеруді және қайта есептеуді қайта өңдейді және D3D5/3 үшін текстураны өңдеуді жақсартады. Келесі ойындарды қолдауды жақсарту үшін түзетулер енгізілді: The Lord of the Rings, Resident Evil 2 және Frogger ойындарындағы Palantírs.
Ақпарат көзі: opennet.ru
