Verze 2.1 vrstvy D7VK zkrátila podle autora načítání některých starých her na polovinu
Překladová vrstva D7VK, která pouští staré hry pro Direct3D 7 přes Vulkan, vyšla ve verzi 2.1. Tentokrát se nezrychlilo vykreslování, ale start: autor ubral režii při vytváření a rušení objektů a u některých her podle vlastních slov zkrátil načítání na polovinu i méně. Vlastní měření k tomu ale nepřiložil.

Překladová vrstva D7VK vyšla 14. srpna 2026 ve verzi 2.1. Poznámky k vydání otevírá věta, kterou by v seznamu změn čekal málokdo: doba zrychlování skončila a přišel čas optimalizovat načítání (přeloženo). Autor pod ní vypsal šestnáct změn, ve kterých ubývá režie na místech, kam se při měření snímkové frekvence nedívá skoro nikdo.
Prostředník mezi starým rozhraním a Vulkanem
D7VK je odbočka od DXVK a převádí volání Direct3D verzí 7, 6, 5 a 3 na Vulkan, aby staré hry běžely pod Wine a Protonem na Linuxu. Úplný ovladač to není: opírá se o backend DXVK pro Direct3D 9 a o implementaci DirectDraw z Wine a mezi obojím dělá prostředníka. Novější rozhraní pokrývají jiné projekty, popisuje Phoronix – Direct3D 8 až 11 samotné DXVK, Direct3D 12 pak VKD3D-Proton.
Číslování má díru, kterou autor vysvětluje hned v popisu projektu. Direct3D 1 nikdy neexistovalo, protože první vydání DirectX žádnou trojrozměrnou část nemělo. Direct3D 2 a 3 jsou prakticky totéž rozhraní a liší se jen historicky. A DirectX 4 Microsoft nikdy nevydal; rozpracované Direct3D 4 se přelilo do toho, čemu se pak začalo říkat Direct3D 5.
Co se v této verzi zkrátilo
Hlavní změna je ořezané sledování životního cyklu objektů. Vytváření a rušení objektů, mezipaměti a kopírovací cesty stály víc, než musely, a jejich zeštíhlení se podle autora projevilo na startu her napříč všemi podporovanými verzemi rozhraní. Jediné konkrétní číslo v poznámkách se týká hry Empire Earth: čas od spuštění do přehrání úvodního videa spadl ze tří až čtyř sekund zhruba na jednu, a to díky zrychlenému kopírování a ukládání struktury se schopnostmi zařízení.
Vedle toho přibyla nepovinná přímá cesta pro volání GetDC a ReleaseDC. Ve hře Arx Fatalis přidala během hraní pět až deset procent snímků, jenže při vykreslování hlavní nabídky výkon naopak znatelně klesl; autor proto sám píše, že se výsledek bude lišit hru od hry. Vertex buffery pro Direct3D 7 a 6 se nově zkoušejí připravit dopředu, což odstraní záseky při prvním sáhnutí na objekt – ale jen tam, kde to chování hry dovolí.
Opravy vázané na konkrétní tituly
Seznam změn je z velké části soupis jednotlivých her. Chyba typu use-after-free při uvolňování připojené hloubkové plochy shazovala Arx Fatalis hned po startu; projevila se jen u binárek přeložených překladači MSVC a clang a upozornil na ni přispěvatel vystupující jako NemesisElectron. Nová volba pro posun středu pixelu o půl texelu odstranila kazy na pozadí v krabicovém vydání hry Resident Evil 2 – dělá totéž co dávná volba v ovladačích ATI a Nvidie z časů Windows 9x a XP a mimo takové případy se zapínat nemá, protože sama vyrábí artefakty, nejvíc na vykresleném textu.
Dál přibylo obejití chybějících pozadí hlavní nabídky v MechWarrior 3, spravované vertex buffery pro Project I.G.I. a Sonic World DX a obejití nešikovných přístupů do bufferů v Empire Earth: The Art of Conquest, které pomáhá, když je na obrazovce hodně jednotek. Rychlejší přenosy ploch se mají projevit ve hrách Blade of Darkness, Knight Rider a Silent Hunter II ve chvíli, kdy se vykreslují takzvané god rays, tedy prosvítající sluneční paprsky.
Srovnání bez naměřených hodnot
Autor v poznámkách přiznává, že tentokrát nemá čím se pochlubit: kód je prý mnohem lépe udržovatelný, ale žádné okázalé skoky ve výkonu se konat nebudou. Zajímavější je, co v poznámkách chybí. Tvrzení o načítání zkráceném na polovinu i méně nedokládá žádné měření a stejně tak není podloženo srovnání, které autor uvádí jako pointu: notebook s čipem Core Ultra 7 256V, sdíleným rozpočtem 37 wattů pro procesor i grafiku a během na baterii prý dosáhl v 3DMarku 99 a 3DMarku 2000 podobného skóre jako verze 1.12 na kartě GeForce RTX 4070 se dvousetwattovým rozpočtem. „Čísla jsem nepřikládal, měli jsme jich dost u vydání 2.0,“ píše k tomu (přeloženo). Kdo si tedy chce ověřit, že se u jeho hry něco změnilo, musí si to změřit sám.
Zpátky do DXVK to nepůjde
Otázku, jestli se práce vrátí do hlavního projektu, má autor v popisu projektu vyřízenou jedním slovem: ne. Vývojáři DXVK podle něj dali najevo, že o cokoli staršího než Direct3D 8 nestojí, a D7VK navíc stojí na jiném principu – je to spíš obal DirectDraw nad Direct3D 9 než plnohodnotná implementace.
Praktické omezení je jinde: D7VK potřebuje grafickou kartu s podporou Vulkanu 1.4. Kdo takovou nemá, může sáhnout po projektu DXVK-Sarek, kam byla podpora Direct3D 7 až 3 přenesena a kde stačí Vulkan 1.1; chybí v něm ale průhlednost klíčovou barvou a přepínání vyhlazování hran za běhu. Retained mode, tedy starší způsob práce se scénou, D7VK nepodporuje vůbec a ani to neplánuje.
Repozitář projektu vznikl na GitHubu v březnu 2022, kód běží pod licencí zlib a k 16. srpnu 2026 měl 731 hvězd a 40 otevřených hlášení.
Zdroje
- D7VK: poznámky k vydání 2.1 (14. srpna 2026)
- Phoronix: D7VK 2.1 Brings Faster Load Times, More Performance Tweaks (14. srpna 2026)
- GamingOnLinux: D7VK version 2.1 brings improvements to retro game loading time (15. srpna 2026)
- D7VK: popis projektu a časté dotazy