Запуск старых игр для Windows

в 12:39, , рубрики: open source, OpenGL, windows, wine, обратная совместимость, старые игры, метки: , , , ,

Многие из нас время от времени любят поиграть в старые игры. Классика вроде Fallout I и II, Космические Рейнджеры, линейка Command & Conquer и т.д. Однако современные версии Windows не обладают достаточным уровнем обратной совместимости и очень часто многочасовые попытки запустить старую игру обречены на провал.

Одна из наиболее критических проблем — графика. Одни игры не могут работать с широкими экранами, другие, ни о чём не подозревая, пользуются ошибками в старых версиях DirectX или DirectDraw, третьи не могут жить без 16-битного цвета. Зачастую трудно определить конкретную проблему, но многие из них без особого труда сможет решить… Wine

Эта мысль пришла мне в голову ещё в прошлом году, когда уже почти отчаявшись поиграть в свой любимый Yuri's Revenge, я попробовал запустить его под установленной в дуалбуте убунтой. Каково же было моё удивление, когда игра запустилась и заработала без особых проблем! Конечно, не удобно было перезагружаться в Linux для того, чтобы поиграть (!) (так уж сложилось, что моё основное занятие — программирование на F# и C#). И тогда я подумал, а может существуют сборки Wine для Windows, которые решат проблемы с графикой в Yuri's Revenge на Win7 x64?

Как оказалось, всё уже сделано до нас. Вот ссылки на основные проекты в этой области:
Бинарники: www.nongnu.org/wined3d/
Инструкция компиляции: wiki.winehq.org/WineD3DOnWindows

Кроме того, я позволил себе перепаковать бинарники для удобства (в оригинале в бинарниках совершенно не было очевидно, какие библиотеки имеют какую битность) и выложить на Dropbox в виде архива: dl.dropbox.com/u/8871833/wined3d.zip

Как этим пользоваться?

Инструкция (на примере Космических Рейнджеров):
— убедиться, что у вас поддерживается OpenGL; Wine реализует DirectX и DirectDraw через него; обычно достаточно скачать последние драйвера для вашей видеокарты с сайта производителя
— скачать архив по ссылке
— распаковать
— определить битность игры 32 или 64 (если игра старая, 99,9%, что она 32-битная)
— скопировать все файлы из соответствующей папки архива в ту папку, где лежит исполняемый файл игры (например, для КР это будет файл C:Program Files (x86)Space Rangers 2rangersNewRes.exe => копировать в C:Program Files (x86)Space Rangers 2)
— запустить игру

Если не поможет, файлы лучше удалить.

P.S. С помощью этого набора библиотек я без проблем завёл КР2 (был чёрный экран с курсором) и Yuri's Revenge на Win8 x64

Автор: lostmsu

  1. lop:

    ne rabotaet dropbox.ru

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js