D9VK 0.40-ի թողարկում, Direct3D 9-ի իրականացում Vulkan-ի վերևում

տեղի ունեցավ նախագծի թողարկում D9VK 0.40, որն ապահովում է Direct3D 9-ի իրականացում, որն աշխատում է զանգերը գրաֆիկական API-ին թարգմանելով Վուլկան. Նախագիծը հիմնված է նախագծի կոդերի բազայի վրա DXVK, որն ընդլայնվել է Direct3D 9-ին աջակցելու համար: WineD3D-ի վրա հիմնված Direct9D 3 ներդրման համեմատ D9VK-ն ավելի լավ կատարողականություն է ձեռք բերում, քանի որ Direct3D 9-ի թարգմանությունը OpenGL-ով ավելի դանդաղ է, քան Vulkan-ի միջոցով թարգմանությունը:

D9VK-ն կարող է օգտագործվել Wine-ի միջոցով Linux-ում 3D հավելվածներ և խաղեր գործարկելու համար: Direct3D 9-ի վրա հիմնված խաղերի մեծ մասը՝ օգտագործելով Shader Model-ի 2-րդ կամ 3-րդ տարբերակները, աջակցվում են: Ծրագրի կոդը տարածվում է անվճար Zlib լիցենզիայի ներքո: D9VK-ին անհրաժեշտ են վարորդներ, որոնք աջակցում են Vulkan API-ին, ինչպիսիք են AMD RADV 18.3+, NVIDIA 415.22+, Intel ANV 19.0+ և AMDVLK:

Հիմնական բարելավումներ.

  • Իրականացվել է 4-բիթանոց հավելվածներում ավելի քան 32 ԳԲ վիդեո հիշողություն օգտագործելու հնարավորությունը, որը լուծում է խնդիրները Skyrim և Oblivion խաղերի համար ռեժիմներ գործարկելու ժամանակ;
  • Միացված է ցուցադրման արդյունքը էկրանին ցուցադրելու ասինխրոն մշակումը (ներկայացման փուլ): Հիմնական մատուցման թելի վրա ուշացումը նվազեցնելու համար ելքային մշակումն իրականացվում է հրամանի ներկայացման թեմայում.
  • Հեռացվել է անհարկի հրամանի հոսքի համաժամացման կետերը պահանջվող տվյալները ստանալու ժամանակ.
  • Ներքին ժամանակի որոշման կոդը թարգմանվել է՝ օգտագործելու պլատֆորմին հատուկ ժամաչափ, որն օգնեց լուծել MinGW-ից high_resolution_clock-ի սխալ պահվածքի հետ կապված խնդիրները.
  • Հետաձգված բուֆերների բեռնաթափումը MANAGED և SYSTEMMEM ապահովված է PrepareDraw-ի կատարումից առաջ փուլում, որը լուծեց կատարողական խնդիրները Risen և Legend of the Heroes: Trails of the Sky խաղերում;
  • Ավելացված աջակցություն D3DTA_CONSTANT, որը հնարավորություն է տվել իրականացնել ճիշտ մատուցում փայլի էֆեկտ SpinTyres և Mudrunner խաղերում;
  • Բարելավված համատեղելիություն DirectX 9 Ex (D3D9Ex): Հաշվի են առնվում ResetEx-ի և Reset-ի մշակման առանձնահատկությունները.
  • Մաքրված և վերամշակված ծածկագիր;
  • Տրամադրվում է WRITEONLY բուֆերների ուղղակի քարտեզագրում, որը կարող է դրական ազդեցություն ունենալ կատարողականի վրա և շրջանցել խաղի սխալը
    Counter-Strike. Համաշխարհային վիրավորական, որի արդյունքում շարունակվում է գրել բուֆեր՝ այն ապակողպելուց հետո;

  • Իրականացված մեթոդ SetDialogBoxMode-ը, որը թույլ է տալիս օգտագործել երկխոսության տուփեր լիաէկրան հավելվածներում;
  • Իրականացված աջակցություն գագաթների միաձուլումՆերառյալ ինդեքսավորված գագաթային խառնուրդ, պահանջվում է SWVP-ի համար (SoftWare Vertex Processing);
  • Ընթացիկ պատկերի վերևում ցուցադրվող նմուշառման հաշվիչը (գլխավոր էկրան, HUD), վերանախագծվել է.
  • Ավելացվեց d3d9.dialogBoxMode տարբերակը, որը կարող է օգտագործվել միայն լիաէկրան ռեժիմում աշխատանքը անջատելու համար;
  • Կատարել է կատարողականի օպտիմալացում և լուծել խնդիրներ, որոնք առաջացել են GTA խաղերի մեկնարկի ժամանակ՝ San Andreas, The Masquerade Bloodlines, Max Payne 2, The Sims 2, Silent Hunter 3, Senran Kagura Shinovi, Dungeons and Dragons, Crysis, Metal Slug X, ANGLE, Need for: Արագություն՝ ածխածին և բարձրացած 1:

Բացի այդ, կարող եք նշել մտադրություն նախագծի մշակող DXVK (DXGI, Direct3D 10 և Direct3D 11-ի ներդրումը Vulkan API-ի վերևում) ժամանակավորապես կկենտրոնացնի ջանքերը միայն սխալների շտկման վրա՝ դանդաղեցնելով ֆունկցիոնալության ընդլայնումը: Նմանատիպ ցանկություն պայմանավորված է մտահոգություններ կոդերի բազայի որակի նվազման և ապագայում ավելի դժվար սպասարկման վերաբերյալ: 1.4.x մասնաճյուղի յուրաքանչյուր թարմացում առաջացնում է բողոքներ ռեգրեսիվ փոփոխությունների վերաբերյալ, որոնք հնարավոր չէ վերարտադրել, տեղայնացնել և ուղղել:

Այս խնդիրները պահանջում են դրանց առաջացման պատճառների վերլուծություն, հակառակ դեպքում դրանք չուղղված թողնելը` շարունակելով բարձրացնել ֆունկցիոնալությունը, կարող է միայն սրել իրավիճակը և սպասարկման գործընթացը վերածել մղձավանջի: Ծրագրերը, որոնք DXVK ծրագրավորողը մտադիր է իրականացնել նախքան միայն սխալների շտկման ռեժիմին անցնելը, ներառում է Vulkan-ի որոշ օգտակար ընդլայնումների աջակցության ավելացում և D9VK նախագծի զարգացումների հետ միաձուլում:

Հավելում` կրունկների վրա տաք ձեւավորվել է ուղղիչ թողարկում D9VK 0.40.1, որում ֆիքսված Սահմանեք vec4(1)-ը COLOR0-ի լռելյայն արժեքին գագաթնակետային շեյդերներում և շտկեց մի վրիպակ, որտեղ ստվերների լռելյայն ելքային բիթերը սխալ էին կիրառվել և, հետևաբար, սխալ ուղղվեցին հետնամասի կողմից, ինչի պատճառով դրանք փոխարինվեցին vec4(0-ով):

Source: opennet.ru

Добавить комментарий