JDNet | Solutions | Emploi | Votre high-tech
 
Linternaute | Copainsdavant
Séminaires & Evénements | Etudes
   

Rechercher  

 
Sociétés Prestataires Carnet Formations Progiciels Encyclo Fonds Guide d'achat Comparateur Téléchargement Livres
Actualités
   2003
   2002
   2001
   Livres
Rubriques
   Java/J2EE
   PHP
   XML
   Client Web
   Technos .NET
   Flash
   Algo/Méthodes
   Outils

Dossiers
   Tous les dossiers

   PHP, Flash, SVG
   Perl / CGI - SSI
   Langages Web
   Services Web
   Sécurité
Ressources
   Interviews

   Téléchargement
   Composants
   Documentation
Contacts
   Rédaction
   Webmaster
© Benchmark Group


Linux Quake HOWTO: Trucs et Astuces


Page suivante Page précédente Table des matières

6. Trucs et Astuces

6.1 Exécution de jeux X et GL sans setuid

Si vous exécutez uniquement les versions X et GL de Quake, QuakeWorld ou Quake II, vous n'aurez pas besoin de les lancer avec les permission root. SVGA est le seul mode qui requiert d'être lancé par root. Les versions X ont simplement besoin d'avoir accès à /dev/dsp, le fichier périphérique son. les versions GL ont de plus besoin d'avoir accès à la carte 3Dfx par /dev/dsp.

/dev/dsp doit être lisible et modifiable par Quake. La plupart des distributions définissent les permissions à 662 (rw-rw--w-) par défaut. La solution la plus simple est de faire un chmod 666 /dev/dsp. Sur la plupart des systèmes, la possibilité de lire depuis un fichier périphérique son ne pose pas de problème de sécurité majeur. Si cette approche n'est pas acceptable pour votre système, créez un groupe propriétaire de /dev/dsp et rendez les joueurs de Quake membre de ce groupe.

Vous aurez besoin du driver /dev/3dfx de la page glide de Daryll Strauss ( http://glide.xxedgexx.com/3DfxRPMS.shtml) pour lancer les anciennes applications glide (like GLQuake) sans être root. Téléchargez le paquetage Device3Dfx.xxx.rpm et installez-le en suivant les instructions de la page web. Après l'installation du driver, vérifiez que les permissions de /dev/3dfx sont à 666 (chmod 666 /dev/3dfx).

Lorsque /dev/dsp et /dev/3dfx seront correctement paramétrés, vous pourrez retirer le bit setuid de vos exécutables Quake/QW/Q2. Faites simplement (en tant que root) chmod 0755 XXXXX, où XXXXX représente glquake, quake.x11, ou quake2.

Si vous avez joué en tant que root avant de faire ces modifications, beaucoup de vos fichiers Quake (comme les sauvegardes) peuvent appartenir à root et être inaccessibles à un utilisateur normal, aussi souvenez-vous de modifier le propriétaire de ces fichiers avant de jouer en tant que simple utilisateur.

6.2 Lancement des jeux SVGA et GL depuis X **

Les clients Quakeworld et Quake II GLX sont des applications natives X, mais depuis qu'elles utilisent Mesa plutôt que le mini-driver 3Dfx, elles sont plus lentes que les versions lib3dfxgl.so. Pour cette raison, vous pouvez préférer encore lancer ces jeux depuis X plutôt que d'utiliser les clients GLX.

Ce qui suit est tiré de la Gazette LINUX n°20, "Truc" par Joey Hess ( joey@kite.ml.org). L'original de ce document se trouve sur http://www.ssc.com/lg/issue20/lg_tips20.shtml#squake

Oui, il est possible d'exécuter les jeux Quake depuis X en tant que root, mais cette option est inconvenante, et vous courez en plus le risque d'un plantage de Quake laissant la console sans réponse. Avec un peu de travail, vous pouvez donner la possibilité à un utilisateur normal de lancer Quake SVGA et GL depuis X ET de revenir automatiquement sous X lorsque le programme se termine, que son arrêt soit normal ou non.

Nota: lorsque je précise "Quake" dans le texte ci-dessus, je veux en fait dire "quake, glquake squake, qwcl, glqwcl, qwcl.x11 ou quake2".

  • Premièrement, vous aurez besoin du paquetage open(1) de Jon Tombs. C'est un lot de très petits programmes qui vous permettent de passer d'une console virtuelle à l'autre et de lancer des programmes sur chacune d'elles. Téléchargez open depuis http://sunsite.unc.edu/pub/Linux/utils/console/. Vous ne devriez pas avoir grand chose de plus à faire que make;make install pour le compiler et l'installer. Une fois l'installation achevée, vous devrez rendre open et switchto exécutables "setuid root". Pour cela:

  • Maintenant, enregistrez le code suivant dans un fichier appelé getvc.c:

    Compilez et installez quelque part dans votre $PATH:

  • Maintenant créons un script appelé runvc: votre $PATH:

    Rendez-le exécutable et mettez-le quelque part dans votre $PATH:

    Maintenant vous pouvez utiliser la commande runvc pour exécuter Quake. Continuez à utiliser la ligne de commande qui vous sert habituellement pour lancer votre partie, mais insérez runvc au début:

    Vous basculerez automatiquement sur une console virtuelle, lancerez Quake puis retournerez sous X lorsque vous sortirez de Quake!

6.3 Conserver la souris à l'intérieur de la fenêtre sous X

Extrait du fichier readme.linux Quake II:

Par défaut, la souris ne sera pas confinée dans la fenêtre de Quake2. Pour obliger Quake2 à capturer la souris, sélectionnez 'Windowed Mouse' sur le menu vidéo, ou tapez '_windowed_mouse 0' sur la console. Faites l'inverse pour la relâcher. Vous pouvez définir des raccourcis clavier pour capturer et relâcher la souris dans la console, de cette façon: bind i "_windowed_mouse 1" bind o "_windowed_mouse 0" Alors "i" activera la capture de la souris et "o" la relâchera.

6.4 Le paramétrage "gonflant" 3Dfx fonctionne également sous Linux

Vous pouvez avoir vu ou entendu parler de certain moyens de "gonfler" les performances d'OpenGL pour Quake par un paramètrage spécial des variables d'environnement. Ces variables sont également valides sous Linux. Vous les définissez simplement de façon légèrement différente. Si un guide "gonflant" pour Windows/DOS vous indique de faire:

Sous Linux, réalisez-le de cette manière:

6.5 Le navigateur de serveur du pauvre

Joe S. ( jszabo@eden.rutgers.edu) suggère:

Je presse Ctrl z pour arrêter, puis je copie l'adresse IP ou le nom de l'hôte avec gpm dans une ligne de commande du genre:

Alors je peux utiliser fg (Ndt: "fg" pour "foreground", commande shell qui a pour effet de remettre un programme au premier plan) pour revenir sur ma liste ultérieurement...

6.6 Utilisation de lib3dfxgl.so pour Quake I **

Vous pouvez utiliser le mini-driver 3Dfx (lib3dfxgl.so) de Quakeworld ou Quake II avec glquake également. Copiez simplement le script glqwcl.3dfxgl ou quake2.3dfxgldans un nouveau fichier, appelé glquake.3dfxgl. Editez alors le script glquake.3dfxgl pour qu'il lance glquake au lieu de glqwcl. Les mêmes restrictions sur l'exécution en tant que root s'appliquent ici, de même que les différences entre une exécution sous glibc et libc5.Voyez les section Quakeworld ou Quake II pour de plus amples informations sur lib3dfxgl.so.

Page suivante Page précédente Table des matières

[22 février 2002, JDNet]

Société | Contacts | Publicité | Presse | Recrutement | Tous nos sites | Données personelles
Pour tout problème de consultations, écrivez au Webmaster.
© Benchmark Group, 4 rue diderot 92156 Suresnes Cedex