Jouer sous GNU/Linux avec des jeux Windows

Transcription

Jouer sous GNU/Linux avec des jeux Windows
Jouer sous GNU/Linux
avec des jeux Windows
Stéphane Téletchéa
L
es jeux sous GNU/Linux progressent
en nombre et en qualité mais il existe
encore un fossé important entre eux et
les jeux commerciaux disponibles sous Microsoft Windows. Cet article présente l'installation et l'utilisation de Cedega sous
MandrivaLinux 2008.0 édition Powerpack,
l'outil de Transgaming qui permet d'exploiter
le meilleur des deux mondes. Les logiciels
contenus sur les DVD joints au présent magazine devront être complétés des rpms
commerciaux disponibles pour les membres
du club Mandriva ou à travers la souscription au service en ligne de Transgaming.
Transgaming/Cedega
L'entreprise Transgaming, fondée en 2000,
a apporté une solution originale dans le domaine des jeux Windows en offrant la portabilité des couches DirectX sous GNU/Linux.
Au départ, cette possibilité a été offerte via
l'inclusion, à partir du projet Wine, de codecs spécifiquement dédiés au support de
DirectX 7. Cette contribution externe, appelée WineX devait initialement être rétrocédée au projet Wine après un délai de 6 mois
mais l'expérience a révélé que les annonces
n'ont pas été suivies d'effets.
Disponibilité de Cedega
Si la société Transgaming permet toujours
l'accès aux sources de Winex (via la licence
Aladdin), à l'adresse http://www. transgaming.
com/sources.php, l'utilisation commerciale
(avec paiement en contrepartie) est interdite
sans accord commercial de leur part. De plus,
la redistribution des binaires est « déconseillée
». Vous voilà prévenus, Transgaming ne joue
qu'en partie le jeu du libre.
Installation sous Mandriva
Les accords commerciaux suscités ayant
été passés par Mandriva, l'installation com-
www.linuxidentity.com
plète de Cedega est disponible sous la forme du rpm : cedega-small-mandriva-6.0.21-1.i386.rpm que vous pourrez installer
à partir de la version Powerpack (utilisez
urpmi ou rpmdrake pour l'installer au besoin) (voir Script 1).
Important : la procédure d'activation du
moteur de Cedega a changé ; il faut maintenant une clé d'utilisation de Cedega fournie
à tout utilisateur du Powerpack sur son
compte sur http://my.mandriva.com. Contactez l'administrateur de votre compte
my.mandriva si ce n'est pas le cas.
Les descriptions qui suivent sont valables pour le dernier moteur disponible
(6.0.2 ou supérieur à la date de rédaction)
et en grande partie pour l'ancien moteur de
la 2007.0 (en version 5.2.6) puisque les
deux versions ont servi à rédiger l'article.
Sauf commentaire explicite, les rapports
Script 1. Installation de Cedega
urpmi cedega
Pour satisfaire les dépendances, les paquetages suivants vont
être installés
Paquetage
Version
(média « "Mandriva Linux - 2008.0 (Powerpack)
pygtk2.0
2.12.0
pygtk2.0-libglade
2.12.0
python-cairo
1.2.6
python-gobject
2.14.0
python-numeric
24.2
(média « "Mandriva Linux - 2008.0 (Powerpack)
cedega-small-mandriva
6.0.2
Révision
Arch
- Installer" »)
2mdv2008.0
i586
2mdv2008.0
i586
1mdv2007.1
i586
2mdv2008.0
i586
5mdv2008.0
i586
- Installer"4 »)
1
i386
un espace additionnel de 11Mo sera utilisé.
Procéder à l'installation des 6 paquetages ? (O/n)
urpmi python-dbus (optionnel mais préférable pour la gestion
des médias amovibles)
49
Cedega
sur le niveau de fonctionnalités de
Cedega concernent la dernière version disponible (6.0.2).
Figure 1. Localisation de l'entrée Transgaming Cedega dans le menu,
dans l'onglet « Jeux »
Figure 2. Assistant de création de compte Cedega
2
Premier lancement
et configuration de Cedega
Lancez Cedega à partir du menu
(voir Figure 1) ou à partir d'une console (en tapant cedega ).
Comme avec tout bon logiciel
qui se respecte, la première étape
consiste à accepter la licence... Cliquez sur Accept. L'assistant de
création de compte se lance (voir
Figure 2).
Remplissez les champs Username et Password avec les identifiants
fournis sur my.mandriva.com, puisque Mandriva a passé les accords
commerciaux nécessaires (voir Figure 4). Pour les détenteurs du rpm de
la version Mandriva 2007.0, vous
pouvez laisser ces champs vides.
Cliquez sur Forward. L'assistant,
après un certain temps vous vous
informe en les listant des mises à
jour disponibles pour cedega (voir
Figure 3). Cliquez sur OK pour les
installer, puis sur Accept lorsque la
licence vous est proposée.
Acceptez la licence Mozilla avant
de télécharger le MozControl et acceptez également la licence de Cedega.
L'installeur vous informe de la
disponibilité d'une nouvelle version
(6.0.3, peut-être supérieure au moment où vous lisez ces lignes), et de
l'ajout de fonctionnalités supplémentaires. Cliquez sur Oui pour télécharger la nouvelle version (voir Figure 5).
Cliquez sur Oui. À priori, l'installation se déroule correctement,
l'assistant vous notifie que l'ancienne version est toujours disponible
et que vous choisirez la version qui
Figure 4. Installation des mises
à jour suggérées
LINUX IDENTITY KIT Hors-Série
vous convient dans l'interface graphique dans Edit –> Global Settings
(voir Figure 6).
Comme il est possible de changer le moteur à la volée, cliquez sur
Oui pour faire de la dernière version
téléchargée, votre version par défaut.
Le téléchargement terminé, l'assistant nous indique que la mise à
jour n'a pas pu être effectuée (malgré deux tentatives à deux jours
d'intervalle) (voir Figure 7).
Il semble qu'il s'agisse d'un problème temporaire au moment de la
rédaction de l'article, vous pourrez
en juger par vous-même lors de la
lecture de cet article (n'oubliez pas
de consulter le forum et le rapport de
bug mentionnés en début d'article).
Cliquez sur Valider. Pour terminer
les mises à jour, téléchargez la base
de données des paramètres de jeux.
Cliquez sur Valider pour lancer le téléchargement, puis encore une fois
sur Valider une fois le téléchargement terminé (voir Figure 8).
Cliquez sur Valider pour passer
à l'étape 2 de l'assistant. Le récapitulatif de votre système est présenté, pour l'ordinateur de test, seule la
mémoire vidéo de la carte graphique n'a pas été détectée (320 Mo),
l'ensemble de la configuration est
correctement renseigné (attention à
l'ouverture AGP pour les possesseurs d'une carte AGP, ne pas mettre une valeur différente de la quantité de mémoire présente sur la
carte) (voir Figure 9).
Cliquez sur Forward. Pour valider
le bon fonctionnement de l'ordinateur, procédez éventuellement aux
tests de compatibilité matériel/
logiciel (voir Figure 10). Cliquez sur
Run Selected Tests (tous par défaut).
Grâce à l'installation standard
fournie par la Powerpack, l'assistant
indique que tous les tests sont réussis, la configuration est donc optimale pour Cedega ! (voir Figure 11).
Remarque : si vous utilisez le
bureau accéléré via XGL, le rapport
du test matériel indiquera à tort
l'absence de rendu direct via OpenGL (voir l'astuce : Cedega et le bureau accéléré XGL).
Cliquez sur Forward. La dernière
étape de l'assistant indique qu'ef-
www.linuxidentity.com
Figure 4. L'utilisateur et le mot de passe sont inutiles...
Figure 5. À peine installé, Cedega nous informe d'une nouvelle version du
moteur. Ils sont réactifs...
Figure 6. Assistant de choix de version du moteur. Nous choisissons d'utiliser par défaut la dernière version téléchargée
Figure 7. La mise à jour de Cedega ne permet pas d'obtenir la dernière
version
3
Cedega
fectivement tout s'est bien déroulé,
vous pouvez maintenant passer
à la suite (voir Figure 12). Cliquez
sur Finish.
Figure 8. Fenêtre de validation du téléchargement des composants
Inventaire de la configuration
réalisée par l'assistant
L'ensemble des informations recueillies est stocké dans le fichier
$HOME/.cedegarc et dans $HOME/
.transgaming_global/. Les fichiers et
répertoires nécessaires au fonctionnement de Cedega sont situés dans
le répertoire $HOME/.cedega/. Il
s'agit d'une arborescence simplifiée
s'inspirant de ce qui existe sous Windows, comprenant les informations
contenues dans le Tableau 1.
Cedega et le bureau accéléré XGL
XGL est lancé au-dessus du serveur
X principal, et porte le numéro d'affichage (ou DISPLAY) : 93.0. Lors de
leur lancement avec Cedega, les
applications n'accèdent qu'au serveur X principal, comportant le numéro d'affichage 0.0. Si vous lancez
des jeux directement, ils ne s'exécuteront pas avec XGL. Pour corriger
ce problème, ouvrez un terminal et
tapez : export DISPLAY=0.0 , puis
lancez Cedega à partir de ce terminal en tapant cedega .
Ces précisions faites, vous pouvez maintenant exploiter tout le potentiel de l'interface principale de
Cedega (voir Figure 13).
Figure 9. Récapitulatif du matériel détecté
Tableau 1. Liste des fichiers et répertoires créés
Nom de fichier
4
Derniers réglages
Comme indiqué dans la Figure 7),
la version de Cedega est maintenant la 6.0.3, cela se vérifie dans
les propriétés globales. Allez dans
Edit –> Global Settings, et vérifiez
que Engine Version est effectivement à 6.0.3 et non à 6.0.2-1 ou
inférieur (voir Figure 14).
Explication
.winex_ver
programmes de Cedega
.languages
contient les fichiers de langue, à télécharger à partir de l'interface de
Cedega
.global.delta
.default_configuration_profiles
configuration_profiles
contient les fichiers de configuration pour Cedega pour mimer les
environnements Windows (win98/2000/XP)
.gddb
une des valeurs ajoutées de Cedega, contient des réglages spécifiques pour
faire tourner au mieux les jeux
LINUX IDENTITY KIT Hors-Série
Nous en profitons au passage
pour changer Winver –> winxp, Desktop –> 1280x1024, Activate TransGaming HUD et Show Memory Usage
pour avoir quelques statistiques sur la
performance du moteur Cedega (images par seconde et mémoire utilisée).
Dans l'onglet Audio, l'idéal est
de conserver les réglages alsa par
défaut s'ils sont disponibles et dans
l'onglet Graphics, précisez la quantité de mémoire de la carte (320
Mo) dans le cadre de cette configuration matérielle.
À noter que Cedega nous gratifie
encore d'une erreur (voir Figure 15),
bien que d'un clic sur Ok, il semble
accepter la nouvelle version (6.0.3).
Cliquez sur Apply puis sur OK.
Dernier raffinement ?
Installation de la langue
Française pour l'interface
Cliquez sur Edit –> Language Preferences, puis dans l'assistant qui
s'ouvre, sur Install pour ajouter une
nouvelle langue. Autorisez Cedega,
en cliquant sur Oui, à contacter le
serveur de Transgaming. Choisissez
dans la liste proposée (ru, fr, bg, nl,
pt, et, nb, de, it, da, en, pl, es, fi, se)
la langue qui vous convient
(à priori « fr ») et cliquez sur Valider.
Fermez et relancez Cedega. La
langue de l'interface est maintenant
plus accessible au plus grand nombre.
Possesseurs de cartes graphiques NVIDIA récentes (pilotes
100.x.x), sachez qu'une incompatibilité avec Cedega oblige à désactiver l'extension ARGB GLX dans le fichier de configuration de Xorg ou
à lancer Cedega avec la commande
: XLIB_SKIP_ARGB_VISUALS=1 cedega
Vous pouvez rendre cette commande définitive en éditant votre fichier .bashrc comme suit (si vous
lancez cedega à partir d'une console : export cedega=''XLIB_SKIP_
ARGB_VISUALS=1 cedega'' (voir
http://www.cedega.com/support/
cedega_release_notes//#argb_
glx_visuals).
Figure 10. Tests de compatibilité à effectuer
Figure 11. Résultat des tests de compatibilité. Tout est vert, nous pouvons poursuivre
Passer à l'essentiel —
jouer !
Bien entendu, si Mandriva et Transgaming nous ont fourni un produit
www.linuxidentity.com
Figure 12. La fin de l'assistant vous confirme que tout s'est bien déroulé
et indique les améliorations apportées depuis la version 5.2 de Cedega
5
Cedega
bien ficelé et facilement accessible, il ne faut pas oublier que notre
objectif principal reste le jeu ! Passons aux choses sérieuses avec
des jeux anciens (Warcraft III) et
plus récents (en version de démo
pour certains).
Warcraft III
Figure 13. Interface principale de Cedega, pour l'instant aucun jeu n'est
installé et configuré
Figure 14. Paramètres de configuration globale de Cedega
Comme pour beaucoup probablement, Warcraft III a été un grand
consommateur de temps (des heures, des heures, et des heures,
à bâtir et démolir...) et une grande
source de plaisir, c'est donc sur ce
grand classique que le premier test
a porté.
Pour lancer Cedega (voir l'astuce :
Cedega et le bureau accéléré XGL
au besoin), insérez le CD du jeu et
cliquez sur le bouton Installation.
Un petit assistant apparaît demandant le nom du jeu, l'emplacement de l'installeur, etc. La valeur
ajoutée de Cedega dans ce domaine consiste à proposer via le menu
déroulant gddb le profil spécifique
du jeu à installer. Comme ce profil
existe pour Warcraft III nous le choisissons. Les paramètres de fonctionnement pour certaines cartes
sont aussi indiqués (voir Figure 17).
Éventuellement, cliquez sur Détecter le disque de jeu, qui dans ce cas
précis, revient au même puisque
l'auto-détection a fonctionné.
Cliquez sur Continuer. Et ... problème ! (voir Figure 18).
L'installation n'a donc pas fonctionné ; seule solution propre : recommencer la préparation depuis le
début, mais ne pas télécharger la
dernière version... Nous laissons
cette partie au cas où le problème
de migration serait résolu lors de la
parution de l'article (l'assistant de
configuration est rapide à exécuter).
Pour repartir de zéro :
cd $HOME
rm -rf .transgaming_global/
.cedega .cedegarc
Figure 15. Cedega ne reconnaît pas la version 6.0.3, pourtant il l'a téléchargée lui-même. Pour connaître le rôle des options, il suffit de laisser le
curseur de la souris positionné sur chacune d'elles et ainsi faire apparaître une petite aide contextuelle
6
L'assistant relancé et correctement
configuré (c'est-à-dire sans faire la
mise à jour du moteur), nous reprenons les tests.
Ce problème devrait être résolu
lors de la publication de l'article
LINUX IDENTITY KIT Hors-Série
(voir les liens a là fin d'article). En
attendant, vous avez un petit descriptif des problèmes possibles.
L'interface classique de Warcraft III apparaît et l'installation du
jeu commence (voir Figure 19).
Après validation de la clé et copie des fichiers, vous voici prêt
à jouer : lancez Cedega, cliquez sur
le jeu et sur l'exécutable avec le CD
inséré dans le bon lecteur (à ce sujet
il faut trouver le bon timing entre
l'insertion du CD et le moment du
clic sur Lancer dans Cedega, un peu
de calibrage sera nécessaire...).
Globalement, le jeu répond bien,
pas de bug visuel notable (même
dans les cinématiques), son impeccable. Presque une déception, tout
fonctionne... (voir Figure 20).
Si vous avez déjà utilisé une version antérieure de Cedega, le problème suivant est susceptible d'apparaître (probablement lors du lancement de Cedega après mise
à jour du rpm) :
cedega
/usr/lib/transgaming_cedega/
gddb.py:19:
RuntimeWarning: Python C API version
mismatch for module gddb_
parser: This Python has API
version 1013, module gddb_
parser has version 1012.
import gddb_parser
Traceback (most recent call
last):
File "/usr/lib/transgaming_
cedega/Point2Play_gui.py",
line 2629, in <module>
Point2Play_gui_ref =
P o i n t 2 P l a y _ g u i (
Point2Play.Point2Play(
config_file) )
File "/usr/lib/transgaming_
cedega/Point2Play_gui.py",
line 505, in __init__
if proggrp not in os.list
dir(self.Point2Play.SYSTEM
WIDE_GAMEDIR):
OSError: [Errno 2] Aucun fichier ou répertoire de ce
type:
'/usr/lib/
transgaming_games/'
Il est particulièrement agaçant, une
fois le jeu installé, de ne plus pouvoir utiliser Cedega !
www.linuxidentity.com
Figure 16. Réglages personnalisés et aide contextuelle en action sur
« Mozilla Control »
Figure 17. Détail des paramètres d'entrée pour Warcraft III. Notez les
conseils pour les patchs et les cartes ATI mentionnés dans l'onglet « Tout »
Figure 18. L'assistant n'arrive pas à accéder à la version 6.0.3...
55
Cedega
Figure 19. Warcraft III sous GNU/Linux, c'est possible. Notez la taille de la
fenêtre virtuelle de 1280x1024, sur un écran de 1680x1050, cela prend
quand même de la place
Comme le message d'erreur l'indique, le chemin de recherche des
jeux est mal configuré. Pour corriger
ce problème, créez sous root un lien
symbolique :
ln -s
/usr/lib/transgaming_
cedega
/usr/lib/
transgaming_games
tenu et lancez l'installation comme vu ci-dessus pour Warcraft III.
( h t t p : / / w w w. 2 k g a m e s . c o m /
bioshock/)
unzip bioshock_demo.zip
Archive: bioshock_demo.zip
creating: BioShock PC
Demo/amd dual core timing fix/
inflating: BioShock PC
Demo/amd dual core timing fix/
AMD Dual Core Timing Fix.exe
inflating: BioShock PC
Demo/background1.bmp
inflating: BioShock PC
Demo/background2.bmp
inflating: BioShock PC
Demo/background3.bmp
inflating: BioShock PC
Demo/data1.cab
inflating: BioShock PC
Demo/data1.hdr
[....]
inflating: BioShock PC
Demo/setup.exe
inflating: BioShock PC
Demo/setup.ini
inflating: BioShock PC
Demo/setup.inx
creating: BioShock PC
Demo/vs redist/
inflating: BioShock PC
Demo/vs redist/vcredist_x86.exe
inflating: BioShock PC
Demo/_Setup.dll
Cette-fois-ci, il est impossible d'installer le jeu (donc de jouer). Il n'est
pas listé dans la liste des jeux
compatibles avec Cedega (voir
Figure 22).
Cedega se lance alors correctement
et indique qu'il faut effectuer une
migration de la configuration (à cause de la mise à jour de la base de
données des jeux cddb, effectuée
auparavant) (voir Figure 21).
Cliquez sur Start. La migration
est rapide et les « 3 » jeux sont convertis (chaque entrée de Warcraft III
compte pour « 1 » jeu).
La conversion des fichiers étant
réalisée, supprimez maintenant le
lien symbolique désormais inutile :
unlink /usr/lib/transgaming_game
Et relancez Cedega pour jouer.
Comme Warcraft est assez ancien
(DirectX 8), il convient donc de vérifier
la compatibilité des jeux récents (au
moins DirectX 9) avec Cedega.
Bioshock
Décompressez le fichier bioshock_
demo.zip pour en extraire le con8
Figure 20. Même en recommençant de zéro, il a fallu être raisonnable
pour ne pas repartir dans l'épopée de Blizzard. Notez en haut à gauche le
nombre d'images par secondes (plutôt autour de 100FPS durant le jeu,
avec tous les réglages au maximum) et l'utilisation mémoire
LINUX IDENTITY KIT Hors-Série
Avec la version de Cedega dont
nous disposons, il n'est a priori pas
possible de le lancer selon la page
de compatibilité le concernant
(http://games.cedega.com/
gamesdb/ratings/view.mhtml?
game_id=3984).
L'assistant démarre puis reste
bloqué sur l'EULA, impossible d'activer la case J'accepte (voir Figure
24) (http://learn.whatisfear.com).
The Settlers
(sorti le 4 octobre)
Non supporté, non fonctionnel (erreur sur la détection de IE7/
netscape...) (http://thesettlers.fr.
ubi.com/home.php).
Earth 2160
Figure 21. Migration des paramètres de configuration de la base de données des jeux
F.E.A.R
Comme réalisé ci-dessus, nous installons le jeu (fichier f.e.a.r._demo_
jouable_1_simple_joueur_anglais_
14981.exe) en spécifiant cette foisci qu'il s'agit d'une version de démo
(donc pas de lecture CD), en cochant la case Gros EXE (voir Figure
23) dans l'onglet Avancé de l'assistant d'installation (au passage, désactivez la surveillance du CD-ROM
puisqu'il n'est pas utilisé).
L'installation s'est déroulée sans
problème et le jeu se lance correctement, je n'ai pas passé l'étape de
création de clé de validation (il faudrait encore recréer une clé spécifiquement ce qui invaliderait l'ancienne). À priori, ce jeu fonctionne
correctement avec la dernière version de Cedega (non fonctionnel
avec Cedega 5.2.6oem) (http://
www.earth2160.com).
Far Cry 2
Un petit dernier pour la route... Le
jeu s'installe correctement (le profil
est disponible dans la cddb), les
options de jeu se configurent et de
nombreux conseils sont prodigués
pour améliorer les performances.
Far Cry 2 fonctionne très bien, mais
nécessite un peu de travail pour
améliorer les performances du jeu
(ne pas commencer par toutes les
options à Very High par exemple...).
Petite astuce : il est possible de
jouer avec toutes les options très
élevées (même l'anti-aliasing, en
1680x1050) sauf pour l'option Special Effects Quality, avec un paramètre différent de low, il y a des
corruptions de textures (l'écran apparaît entièrement gris) (http://
farcry.fr.ubi.com/ -démo-).
Bilan et perspectives
Figure 22. Incompatibilité entre Bioshock et Cedega, comme confirmé sur leur site : http://games.cedega.com/gamesdb/games/
view.mhtml?game_id=4858
www.linuxidentity.com
Les jeux sous licence propriétaire
ont de beaux jours devant eux. Tirés
majoritairement par le marché des
consoles, où non seulement le jeu
9
Cedega
est propriétaire mais aussi le système d'exploitation et l'architecture
matérielle, les jeux vendus pour
plusieurs plates-formes ont peu de
chance de voir le jour.
D'un autre côté, comme l'a indiqué Richard Stallman lui-même
(lors d'un salon Solutions GNU/
Linux à Paris), le cas des jeux est un
peu à part du monde des logiciels
libres. Dans un jeu, il y a beaucoup
de création artistique (images, son,
vidéo, ...) couplée à de l'ingénierie
logicielle. À quoi sert un moteur
sans les niveaux, les textures, les
animations ?
Transgaming/Cedega
fournit
une solution spécifique et fonction-
nelle pour un grand nombre de jeux
(à en juger par la longue liste disponible en ligne). La base de données
des jeux est mise à jour régulièrement et vous pouvez faire confiance
au retour des utilisateurs pour connaître le degré de fonctionnalité du
jeu sous Cedega. Selon vos habitudes de jeu, vous devrez donc faire
votre choix.
En ce qui concerne les performances, l'expérience montre qu'il
faut passer un peu de temps pour
trouver des réglages adaptés et
qu'une configuration sérieuse est
plutôt recommandée (enfin, en
fonction de la résolution de l'écran,
des réglages graphiques, etc).
Néanmoins, à l'usage le jeu devient
en général très agréable à prendre
en main (quand cela fonctionne), et
le fait d'avoir une station GNU/
Linux-Mandriva/Cedega à la place
de Windows est vite oublié...
Mandriva a réalisé un très bon
travail d'incorporation de la solution
TransGaming Cedega dans cette
édition 2008.0 (édition DVD Powerpack), ce qui vous permet d'avoir un
aperçu très significatif des possibilités logicielles qui restent à développer. En effet, si GNU/Linux progresse
bien dans le domaine du « bureau »,
les éditeurs de jeux ne semblent pas
encore convaincus du marché commercial potentiel que notre OS représente. La solution intermédiaire
fournie par Transgaming est donc
un compromis entre la liberté apportée par la GPL et le fait de pouvoir
utiliser les jeux achetés.
Pour aller
plus loin
Figure 23. Prise en charge d'une démo (sans CD) avec l'option « Gros EXE »
http://www.linuxgames.org
http://www.happypenguin.org
h t t p : / / w w w . l i b s d l . o r g/
games.php
http://linuxfr.org/topics/
Game.html
http://garagegames.com
http://www.transgaming.org/
gamesdb
http://www.transgaming.
com/sources.php
Figure 24. EULA bloqué...
10
LINUX IDENTITY KIT Hors-Série