Программы
d7vk — новый проект для совместимости Linux с классическими играми на Windows

d7vk — новый проект для совместимости Linux с классическими играми на Windows

Многие современные библиотеки поддерживают совместимость с Direct3D 8, в то время как d7vk нацелен на Direct3D 7, что позволяет лучше поддерживать старые игры.

Disciples

На протяжении многих лет Valve постепенно улучшала библиотеку Proton, которая позволяет тысячам игр для Windows беспрепятственно работать на SteamOS на базе Linux. Однако совместимость между Windows и Linux, как правило, распространяется только на игры, написанные для Direct3D 8 — проприетарного графического API Windows, выпущенного Microsoft в конце 2000 года.

Новый же проект с открытым исходным кодом стремится расширить совместимость Linux с более ранними версиями игр для ПК. Проект d7vk представляет из себя

«уровень преобразования на основе Vulkan для Direct3D 7 (D3D7), который позволяет запускать 3D-приложения в Linux с помощью Wine».

Изображение Шпаргалка по командам Linux, FreeBSD и MacOS

Больше — всегда лучше

Новый проект — не первая попытка запустить игры Direct3D 7 в Linux. Встроенный в Wine уровень совместимости WineD3D уже как минимум два десятилетия поддерживает D3D7 в той или иной форме. D7vk вместо этого отходит от существующего уровня совместимости dxvk, который уже используется Valve Proton для SteamOS и который, по сообщениям, обеспечивает лучшую производительность, чем WineD3D, во многих играх.

Автор проекта D7vk WinterSnowfall пишет, что они не ожидают, что этот новый проект будет в будущем включен в основной dxvk. Новая версия должна иметь «тот же уровень профилей конфигурации и исправлений для каждого приложения, к которому вы привыкли в dxvk». И, хотя d7vk может и не работать лучше существующих альтернатив, WinterSnowfall пишет, что «наличие большего количества вариантов, по крайней мере, в моем понимании — это хорошо».

Arx Fatalis

Эти дополнительные возможности должны порадовать фанатов, которые ищут новые способы играть в компьютерные игры определенной эпохи. В 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.

Escape from Monkey Island

Несмотря на некоторые известные проблемы с определенными играми D3D7, WinterSnowfall пишет, что «сейчас в большинстве поддерживаемых игр все работает от прилично до отлично». Тем не менее, автор проекта предупреждает, что проект, вероятно, никогда не достигнет полной совместимости, поскольку «D3D7 — это область крайне проклятой совместимости API».

Не стоит ожидать, что этот проект будет расширен и будет включать поддержку еще более старых API DirectX, предупреждает WinterSnowfall. «D3D7 и так является достаточно сложной и запутанной задачей», — пишет автор. «Чем дальше мы уходим от D3D9, тем дальше мы уходим от божественного».