D7VK 2.1 perpus sutrumpina kai kurių klasikinių žaidimų įkėlimo laiką

  • „D7VK 2.1“ sumažina objektų kūrimo išlaidas ir pagerina kaupimą talpykloje, perpus sutrumpindama kai kurių žaidimų įkėlimo laiką.
  • Atnaujinimas ištaiso klaidą, dėl kurios „Arx Fatalis“ galėjo užsidaryti paleidimo metu.
  • Taip pat pridedamas pasirenkamas „GetDC“ / „ReleaseDC“ maršrutas ir konkretūs našumo patobulinimai tokiems žaidimams kaip „Resident Evil 2“ ir „Empire Earth: The Art of Conquest“.

D7VK 2.1

„D7VK 2.1“ dabar yra nauja šio atvirojo kodo grafikos vertimo sluoksnio versija, leidžianti senesniems „Windows“ žaidimams, paremtiems „Direct3D 7“, „6“, „5“ ir „3“, veikti „Vulkan“ aplinkoje. Po reikšmingų našumo patobulinimų, pristatytų ankstesnėse versijose , šis atnaujinimas daugiausia dėmesio skiria kitam aspektui: žaidimų įkėlimo ir paleidimo laiko sutrumpinimui . Kai kuriuose žaidimuose patobulinimai perpus sutrumpina žaidimo įkėlimo ar paleidimo laiką.

„D7VK“ yra specialiai sukurtas klasikiniams žaidimams, kurie naudoja ankstyvąsias „Direct3D“ versijas ir vis dar gali būti paleisti „Linux“ sistemoje naudojant „Wine“ arba „Proton“. Projektas naudoja „Vulkan“ kaip šių senesnių API sąsają, užpildydamas spragą, kurios tiesiogiai neužpildo šiuolaikinės „DXVK“ versijos, kurios orientuotos į „Direct3D 8“, „9“, „10“ ir „11“ arba „VKD3D-Proton“, sukurtą „Direct3D 12“.

D7VK 2.1 pagreitina klasikinių žaidimų įkėlimo laiką

Pagrindinė nauja D7VK 2.1 funkcija yra susijusi su objektų kūrimu ir naikinimu . Projektas sumažino su šių objektų gyvavimo ciklo stebėjimu susijusias išlaidas, taip sumažinant žaidimo įkėlimo ir inicijavimo etapuose reikalingą darbą.

Šis pakeitimas tiesiogiai veikia paleidimo laiką. Pasak kūrėjo, keli žaidimai pastebimai patobulėjo, o kai kurių jų įkėlimo laikas sutrumpėjo perpus ar net daugiau, palyginti su ankstesnėmis „D7VK“ versijomis. Nors klasikiniai žaidimai paprastai neturi didelių įkėlimo laiko problemų šiuolaikinėje įrangoje, projekto atstovai mano, kad šie optimizavimai leidžia geriau panaudoti turimus išteklius.

Taip pat buvo patobulinta talpyklos sistema. Mažesnės objekto gyvavimo ciklo valdymo išlaidos ir efektyvesnis talpyklos veikimas sumažina darbą, kurį D7VK turi atlikti paleidžiant programą ir atliekant tam tikras vėlesnes operacijas.

Taip pat yra svarbių suderinamumo pataisymų

„D7VK 2.1“ ne tik optimizuoja įkėlimo laiką. Atnaujinimas taip pat ištaiso „use-afree“ problemą, susijusią su susijusių gylio trafaretų paviršių išleidimu . Klaida pasireiškė tik su tam tikrais dvejetainiais failais, kompiliuotais naudojant MSVC arba Clang, ir dėl to kai kurie žaidimai netikėtai užstrigdavo paleidžiant.

Vienas iš paveiktų žaidimų buvo „Arx Fatalis“ , kuris galėjo užstrigti paleidžiant. „D7VK 2.1“ versijoje įtrauktas pataisymas išsprendžia šią problemą ir leidžia žaidimui veikti nesusidūrus su šia konkrečia klaida.

Atnaujinime taip pat yra konkrečių žaidimų patobulinimų. Tai apima „Resident Evil 2“ ir „Empire Earth: The Art of Conquest“ – dviejų klasikinių žaidimų, kuriems galima pasinaudoti šioje versijoje atliktu darbu, našumo patobulinimus.

Naujas pasirenkamas maršrutas, skirtas „GetDC“ ir „ReleaseDC“

Dar viena naujovė D7VK 2.1 Tai yra pasirenkamas vykdymo kelias skambučiams GetDC y ReleaseDCTikslas yra pagerinti tam tikrų žaidimų, kuriuose intensyviai naudojamos šios funkcijos, našumą.

Įdiegimas yra neprivalomas, nes jo rezultatai labai priklauso nuo kiekvieno žaidimo elgsenos. Kai kuriais atvejais tai gali pagerinti našumą, o kitais – sukelti visiškai priešingą efektą ir padidinti tam tikrų operacijų kainą.

Pats kūrėjas pastebėjo maždaug 5–10 % padidėjusį FPS žaidimo metu „Arx Fatalis“ žaidime, naudojant šį maršrutą. Tačiau tas pats pakeitimas sukelia pastebimą našumo sumažėjimą generuojant pagrindinį žaidimo meniu. Todėl tai nėra universalus optimizavimas, kurį reikėtų įjungti be atrankos, o veikiau parinktis, kuri gali būti naudinga tam tikruose žaidimuose.

Įdomus patobulinimas žaidžiant „Windows“ klasiką „Linux“ sistemoje

Pagrindinis „D7VK 2.1“ privalumas yra žaidimų katalogas, kuris gali atrodyti mažas, palyginti su šiuolaikiniais žaidimais, tačiau išlieka aktualus tiems, kurie naudoja „Linux“ kaip klasikinių žaidimų platformą. Šis sluoksnis leidžia perkelti senesnes „Direct3D“ API 3, 5, 6 ir 7 į „Vulkan“, todėl šiuos žaidimus galima paleisti naudojant „Wine“ arba „Proton“.

Tai ypač naudinga žaidimams, kurie buvo sukurti gerokai anksčiau, nei šiuolaikinės grafikos API tapo standartu. Užuot pasikliavęs vien tradicinėmis „Direct3D“ įgyvendinimais, prieinamais per „Wine“, „D7VK“ siūlo „Vulkan“ pagrįstą metodą, kuris gali pasiūlyti geresnį suderinamumą ir našumą su dabartine grafikos įranga ir tvarkyklėmis.

D7VK 2.1 jau galima įsigyti

„D7VK 2.1“ jau galima atsisiųsti iš projekto saugyklos. Šioje naujoje versijoje mažiau dėmesio skiriama reikšmingam FPS padidinimui nei ankstesniuose atnaujinimuose, o daugiau – vertimo sluoksnio vidinio veikimo tobulinimui.

Sumažinus objektų kūrimo metu tenkančias išlaidas, patobulinus talpyklą ir optimizavus įkrovos procesą, galima gerokai sutrumpinti tam tikrų žaidimų įkėlimo laiką. Tai dar ne tik ištaisė „Arx Fatalis“ gedimą, atliko pakeitimus kituose žaidimuose ir pridėjo naują pasirenkamą kelią. GetDC/ReleaseDC.

Šiuo atnaujinimu „D7VK 2.1“ toliau tobulina labai specifinį žaidimų „Linux“ sistemoje aspektą: klasikinių žaidimų, kurie remiasi senesnėmis „Microsoft“ grafikos API, vykdymą. Atnaujinimas rodo, kad vis dar yra erdvės tobulinti šią patirtį, net kai žaidimai yra dešimtmečių senumo ir veikia su modernia įranga.


Pridėti kaip pageidaujamą šaltinį „Google“ sistemoje