Փորձարկումը սկսվել է առաջին թողարկման թեկնածու Wine 8.0-ի վրա, որը WinAPI-ի բաց իրականացումն է: Կոդի բազան դրվել է սառեցման փուլի թողարկումից առաջ, որը սպասվում է հունվարի կեսերին: Wine 7.22-ի թողարկումից ի վեր փակվել է 52 վրիպակի զեկույց և կատարվել է 538 փոփոխություն:
Ամենակարևոր փոփոխությունները.
- Direct3D 3 ներդրմամբ vkd12d փաթեթը, որն աշխատում է Vulkan գրաֆիկական API-ի հեռարձակման զանգերի միջոցով, թարմացվել է 1.6 տարբերակին:
- Իրականացվել է Vulkan-ի և OpenGL-ի համար համակարգային զանգերի փոխարկիչների (thunks) օպտիմիզացում:
- WinPrint-ն ընդլայնել է Print պրոցեսորների աջակցությունը:
- Բարելավված joystick կառավարման վահանակ:
- Աշխատանքն ավարտվել է printf ֆունկցիայի կոդի «երկար» տեսակի համար աջակցություն տրամադրելու համար:
- Խաղերի շահագործման հետ կապված սխալների մասին հաշվետվությունները փակ են՝ Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM:
- Փակ սխալի հաշվետվություններ՝ կապված հավելվածների շահագործման հետ՝ TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5:
Բացի այդ, մենք կարող ենք նշել Wine նախագծի կողմից vkd3d 1.6 փաթեթի հրապարակումը Direct3D 12-ի ներդրմամբ՝ աշխատելով Vulkan գրաֆիկական API-ին զանգերի թարգմանության միջոցով: Փաթեթը ներառում է libvkd3d գրադարաններ Direct3D 12-ի ներդրմամբ, libvkd3d-shader՝ 4-րդ և 5-րդ մոդելների թարգմանիչով և libvkd3d-utils՝ Direct3D 12 հավելվածների տեղափոխումը պարզեցնելու գործառույթներով, ինչպես նաև մի շարք ցուցադրական օրինակներ, ներառյալ պորտը: glxgears-ից դեպի Direct3D 12: Ծրագրի կոդը բաշխված է LGPLv2.1-ի համաձայն լիցենզավորված:
libvkd3d գրադարանն աջակցում է Direct3D 12 գործառույթների մեծամասնությանը, ներառյալ գրաֆիկական և հաշվողական սարքերը, հերթերն ու հրամանների ցուցակները, բռնակները և կույտային բռնակները, արմատային ստորագրությունները, անկանխատեսելի մուտքը, նմուշառիչները, հրամանների ստորագրությունները, արմատային հաստատունները, անուղղակի մատուցումը, Մաքրել մեթոդները *( ) և Պատճենել*(). libvkd3d-shader-ում իրականացվում է 4-րդ և 5-րդ մոդելների բայթկոդի թարգմանությունը միջանկյալ SPIR-V ներկայացման մեջ: Աջակցում է գագաթնակետին, պիքսելին, թեսելացմանը, հաշվարկային և պարզ երկրաչափական շեյդերներին, արմատային ստորագրության սերիականացմանը և ապասերիալիզացիան: Shader-ի հրահանգները ներառում են թվաբանական, ատոմային և բիթային գործողություններ, համեմատության և տվյալների հոսքի վերահսկման օպերատորներ, նմուշառում, հավաքում և բեռնում հրահանգներ, չպատվիրված մուտքի գործողություններ (UAV, Unordered Access View):
Նոր տարբերակը շարունակում է կատարելագործել shader կոմպիլյատորը HLSL-ում (High-Level Shader Language), որը տրամադրվում է DirectX 9.0-ից սկսած: HLSL-ի հետ կապված բարելավումները ներառում են.
- Նախնական աջակցություն է իրականացվել հաշվողական ստվերների համար:
- Բարելավված աջակցություն նախաստորագրման և կոմպոզիտային օբյեկտների նշանակման համար, ինչպիսիք են կառուցվածքները և զանգվածները:
- Ավելացվեց տեքստուրային ռեսուրսները բեռնելու և խնայելու հնարավորություն՝ օգտագործելով անկանխատեսելի մուտք (ԱԹՍ):
- Ավելացվել է գործառույթի ատրիբուտների աջակցություն և ներդրված ներկառուցված գործառույթներ asuint(), length(), normalize():
- Ավելացվել է լողացող կետի մոդուլների աջակցություն:
- Իրականացրել է VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS դրոշը՝ չպատվիրված մուտքի ներկայացման (UAV) նկարագրիչների վրա ատոմային գործողությունները ցույց տալու համար:
Source: opennet.ru