Projekti lsfg-vk ka përgatitur një port jozyrtar të utilitarit Lossless Scalings Frame Generation (LSFG) për platformën Linux, duke përdorur DXVK dhe API-në grafike Vulkan. Kodi i projektit është shkruar në C++ dhe është publikuar nën licencën MIT. Zhvillimi është kryer nga një entuziast i jashtëm, i cili ka riprodhuar funksionalitetin e LSFG të pronarit përmes inxhinierisë së kundërt të biblioteka të Windows.
Aplikacioni lejon të shkallëzojë daljen e aplikacioneve të lojërave, të dizajnuara për t'u ekzekutuar në një dritare të veçantë, për t'u shfaqur në modalitetin e ekranit të plotë. Utilitari mund të nevojitet edhe për të eliminuar daljen e mjegullt gjatë shkallëzimit duke përdorur nënstrukturën grafike standarde ose për të anashkaluar kufizimet në lojërat që mbështeten në rezoluta fikse të ekranit. Për më tepër, ka mundësinë e rritjes së qetësisë së daljes dhe rritjes së frekuencës së kadrave në lojërat që nuk janë optimizuar për FPS të lartë, duke futur kadrin e mesëm të shtuar, të krijuar mbi bazën e ndërmjetësimit të kadrave përkatës.
Për të riparuar detajet që mungojnë dhe për të shkallëzuar në LSFG, mund të përdoren si algoritme origjinale të brendshme ashtu edhe teknologji ekzistuese të bazuara në mësimin e makinerive, si AMD FidelityFX Super Resolution dhe NVIDIA Image Scaling. Zgjedhja e algoritmit varet nga lloji i aplikacioneve lojërave. Për shembull, për lojërat moderne rekomandohet të përdoret algoritmi i brendshëm LS1 ose teknologjia e super-sampling-ut AMD FSR. Për lojërat e vjetra me grafikë pikselesh, ofrohen algoritmet Integer Scaling dhe xBR, ndërsa për lojërat e stilit të animuar dhe anime, është në dispozicion algoritmi Anime4K. Përveç lojërave, modifikimi i daljes mund të aplikohet edhe në emulatorë për të luajtur lojërat retro dhe lojërat për konsola.
Skalimi dhe zĂ«vendĂ«simi i ĐșаЎŃа bĂ«het nĂ« mĂ«nyrĂ« tĂ« menjĂ«hershme dhe nuk kĂ«rkon ndryshime nĂ« lojĂ«ra. NĂ« versionin pĂ«r Linux, pĂ«r zĂ«vendĂ«simin e ĐșаЎra dhe pĂ«rfshirjen nĂ« daljen e lojĂ«s pĂ«rdoret lidhja e njĂ« pĂ«rpunuesi nĂ« formĂ«n e njĂ« shtrese shtesĂ« Vulkan, me anĂ« tĂ« tĂ« cilit kryhet kapja, ekzekutimi dhe modifikimi i funksioneve ekzistuese Vulkan. PĂ«r tĂ« pĂ«rdorur lsfg-vk, mjafton tĂ« instaloni bibliotekĂ«n liblsfg-vk.so dhe tĂ« konfiguroni parametrat e saj pĂ«rmes variablave tĂ« ambientit.
LSFG origjinal është një aplikacion i kompiluar për Windows mbi API D3D11. Për të riprodhuar funksionalitetin e LSFG në Linux, implementimi u transeksionua në një format që përdor API Vulkan. Për transferimin e shenjave, u shtua një procesor që kap thirrjet D3D11 dhe ruan shenjat në disk, si dhe një parser për nxjerrjen dinamike të shenjave nga skedarët ekzekutivë në formatin PE (Portable Executable). Për të transferuar pipeline-in grafik që menaxhon ekzekutimin e shenjave, u ndanë komponentët mbi API D3D11 dhe me anë të DXVK u sigurua funksionimi i tyre në Linux. Pas marrjes së një versioni funksional mbi D3D11 dhe DXVK, me ndihmën e debugger-it RenderDoc, u mor një shtrirje e saktë e thirrjeve Vulkan, mbi të cilën u përgatit versioni përfundimtar, që përdor drejtpërdrejt API Vulkan.
Burimi: opennet.ru
