На протяжении многих лет Valve постепенно улучшала библиотеку Proton, которая позволяет тысячам игр для Windows беспрепятственно работать на SteamOS на базе Linux. Однако совместимость между Windows и Linux, как правило, распространяется только на игры, написанные для Direct3D 8 — проприетарного графического API Windows, выпущенного Microsoft в конце 2000 года.
Новый же проект с открытым исходным кодом стремится расширить совместимость Linux с более ранними версиями игр для ПК. Проект d7vk представляет из себя
«уровень преобразования на основе Vulkan для Direct3D 7 (D3D7), который позволяет запускать 3D-приложения в Linux с помощью Wine».
Больше — всегда лучше
Новый проект — не первая попытка запустить игры Direct3D 7 в Linux. Встроенный в Wine уровень совместимости WineD3D уже как минимум два десятилетия поддерживает D3D7 в той или иной форме. D7vk вместо этого отходит от существующего уровня совместимости dxvk, который уже используется Valve Proton для SteamOS и который, по сообщениям, обеспечивает лучшую производительность, чем WineD3D, во многих играх.
Автор проекта D7vk WinterSnowfall пишет, что они не ожидают, что этот новый проект будет в будущем включен в основной dxvk. Новая версия должна иметь «тот же уровень профилей конфигурации и исправлений для каждого приложения, к которому вы привыкли в dxvk». И, хотя d7vk может и не работать лучше существующих альтернатив, WinterSnowfall пишет, что «наличие большего количества вариантов, по крайней мере, в моем понимании — это хорошо».
Эти дополнительные возможности должны порадовать фанатов, которые ищут новые способы играть в компьютерные игры определенной эпохи. В PC Gaming Wiki перечислено более 400 игр, написанных с использованием API D3D7, и хотя большинство из них было выпущено в период с 2000 по 2004 год, несколько новых игр D3D7 продолжают выходить вплоть до 2022 года.
Список игр D3D7, как и следовало ожидать, включает в себя много лицензионных игр низкого качества, но есть и хорошо запомнившиеся игры: Escape from Monkey Island, Arx Fatalis и оригинальная Hitman: Codename 47. WinterSnowfall пишет, что проект был вдохновлен желанием играть в такие игры, как Sacrifice и Disciples II, на основе существующей платформы dxvk.
Несмотря на некоторые известные проблемы с определенными играми D3D7, WinterSnowfall пишет, что «сейчас в большинстве поддерживаемых игр все работает от прилично до отлично». Тем не менее, автор проекта предупреждает, что проект, вероятно, никогда не достигнет полной совместимости, поскольку «D3D7 — это область крайне проклятой совместимости API».
Не стоит ожидать, что этот проект будет расширен и будет включать поддержку еще более старых API DirectX, предупреждает WinterSnowfall. «D3D7 и так является достаточно сложной и запутанной задачей», — пишет автор. «Чем дальше мы уходим от D3D9, тем дальше мы уходим от божественного».