WineX

0vod ovod@crazy.ru

Xakep, номер #052, стр. 052-072-1

Продолжаем играть в Линуксе!

Продолжим начатую недавно тему про игры в Linux. Предыдущая статья обобщила все те методы, которые позволяют сделать из Пингвина полноценную игровую платформу. В этой статье мы рассмотрим на примере популярных ныне игрушек – CS, Half-Life и, наконец, Warcraft 3, как играть в игры, требующие поддержки DurectX, используя WineX. Go!

Начнём с самого главного: под Linux'ом можно запускать Windows-программы и игры в том числе. Существует большое количество программ, позволяющих это сделать. Скажу лишь о нескольких. VMWare - мощная система виртуальных машин: эмулируется сам компьютер, внутри которого и запускается другая ОС. Win4Lyn - тоже эмулятор виртуального компьютера, но он создан и оптимизирован специально для запуска Windows в Linux. Правда, вышеперечисленные программы используют для эмуляции сам Windows, так что нужно иметь установленную ось, да и в игры ни под VMWare, ни под Win4Lyn все равно не поиграешь.

WINE - это не совсем эмулятор, так как он не требует никаких виндушных файлов и представляет собой самостоятельную программу. А благодаря проекту WineX от TransGaming он позволяет насладиться игрой в DirectX-игры, что нам и надо.

Подготовка

Для начала нужно проверить работоспособность OpenGL:

$ glxinfo

Удели особое внимание строчке: 'direct rendering: Yes', это аппаратное ускорение, если 'Yes' - оно включено, если 'No' - будет использован только программный рендеринг в любой игре. Если аппаратное ускорение включено, то оставь, как есть. Если же оно отключено, или ты просто хочешь поставить свежие дрова с новой версией реализации OpenGL для видеокарты – читай дальше. Для счастливых обладателей XFree86 4.2.0 настоятельно рекомендую сделать символьный линк с /usr/X11R6/include/GL на /usr/include/GL. Для этого:

$ cd /usr/X11R6/include/GL

$ ln -s /usr/include/GL

Теперь нужно убедиться, что в этой папке лежат glu_mangle.h, gl_mangle.h, glx.h, glext.h, glx_mangle.h, glu.h, glxext.h. Если твоя карточка от nVidia, то возьми с www.nvidia.com последние драйвера: нужно скачать два пакета: NVIGIA_keel (модуль для ядра) и NVIDIA_GLX (OpenGL для карточки), лучше скачивать исходники. Для сборки драйверов:

$ cd /usr/src/NVIDIA_keel-1.0-3123

$ make && make install

$ cd /usr/src/NVIDIA_GLX-1.0-3123

$ make && make install

Особых проблем с установкой драйверов не наблюдалось. Правда, при установке собранного модуля для ядра, он будет прикручен к ядрышку, которое запущено в данный момент, а при загрузке другого ядра будет мигать экран: из-за отсутствия дров для карточки. Чтобы это пофиксить, нужно дождаться появления консоли и собрать дрова уже из-под нужного тебе ядра. Если ты имеешь карточку от 3dfx, настоятельно рекомендую купить новую видеокарту :), если ты хочешь НОРМАЛЬНО играть в новые игры. Хотя во что-то ты ещё поиграешь. Установи последнюю версию Glide с www.linux.3dfx.com. Для установки openGL нужно собрать Mesa - это свободная реализация openGL. На www.mesa3d.sourceforge.net скачай последние версии исходников MesaLib и MesaDemos, далее:

Содержание  Вперед на стр. 052-072-2
ttfb: 3.000020980835 ms