SDB:3D sous SUSE LINUX

Un article de openSUSE.


Version: 7.1

Sommaire

Objectif

Vous souhaitez utilisez la fonctionnalité 3D de votre carte graphique également sous SuSE Linux afin de démarrer différentes applications qui nécessitent ou utilisent cette fonctionnalité.


Procédure

La fonctionnalité 3D est principalement due aux modules DRI, GLX et fireGL pour les jeux de puces FireGL. Ci-après, vous trouverez une liste des types de cartes graphiques et des modules 3D dont elles ont besoin :

Fabricant Type de cartes graphiques Prérequis (paquetage) Module Script
3dfx
  • Voodoo Graphics
  • Voodoo2
  • Voodoo Banshee
  • Voodoo 3/4/5
  • xf86_glx * mesa3dfx * glide_vg
    (voodoo graphics) * glide_vg2 (voodoo2)
dri / glx switch2xf86_glx
ATI
  • Série Rage128
  • Série Radeon
xf86_glx dri / glx
dri / glx
fglr200 / dri / glx
switch2xf86_glx
FireGL
  • FireGL 1
  • FireGL 2/3/4
  • FireGL 8700/8800
  • xf86_glx
    * xfiregl23 fr
    Cartes Diamond FireGL
    * xfglr200(!)
    fr 8700/8800
    (Série x)
dri / glx
fgl1 / dri / glx
fgl23 / dri / glx
switch2xf86_glx
Intel
  • i810
  • i815
  • i830
xf86_glx dri / glx switch2xf86_glx
Matrox
  • G200
  • G400
  • G450
  • G550
xf86_glx dri / glx switch2xf86_glx
NVIDIA

Veuillez noter que NVIDIA, à partir de la version 4349 du pilote, offre un utilitaire d'installation complet au lieu de simples RPM.

NVIDIA_kernel(!)
NVIDIA_GLX(!)
glx switch2nvidia_glx
PowerVR
  • Kyro
  • Kyro2
powervr(!) dri / glx switch2xf86_glx

(!) = pilote propriétaire

La fonctionnalité 3D peut provoquer des problèmes et peut même, dans certains cas, provoquer un gel du système. Si vous constatez une instabilité du système due à 3D, nous vous conseillons de ne pas continuer à utiliser 3D et de passer à MESA Software Rendering. À cette fin, supprimez les modules 3D correspondants de XF86Config.

Problèmes et assistance

De nombreux fabricants accompagnent maintenant leurs pilotes d'une importante documentation. Celle-ci contient, entre autres, les différents messages d'erreur ainsi que la marche à suivre pour résoudre les problèmes. Sur Internet, vous trouverez également divers forums d'aide à ce sujet.

Si vous avez encore des questions relatives à la configuration 3D ou si vous chercher de l'aide pour résoudre des problèmes, nous ne pouvons malheureusement pas vous offrir d'assistance gratuite. Cependant, dans un tel cas vous pouvez vous adresser à nos Advanced Support Services.

Vérification du matériel avec 3Ddiag (depuis SuSE Linux 7.3)

Utilisez la commande 3Ddiag pour vérifier la fonctionnalité 3D. Comme il est difficile d'expliquer toutes les sorties, nous nous en tiendrons, dans cet article, à la dernière version de 3Ddiag (0.703 SUSE LINUX 9.0). La sortie vous donne les informations suivantes :

  • si un matériel supportant 3D a été trouvé
  • quels modules doivent être chargés
  • si tous les conditions nécessaires sont réunies ou s'il y a des problèmes

Exemple pour 3Ddiag avec 3Dfx Voodoo 3. Les sections sont commentées individuellement :

==
Verifying 3D configuration based on XFree86 4 for 3D board
"3Dfx Interactive, Inc. Voodoo 3 (121a@0005)":
==

Informations relatives à la carte

==
Test for correct XFree86 version ... done.
==

Test de la version XFree86 correspondante.

==
Tests for XFree86 configuration:
  Config File /etc/X11/XF86Config ... done.
  Driver ... done.
  Color Depth ... done.
  Extensions ... failed!
================================================================
3D Hardware acceleration is not used. To use 3D
Hardware acceleration please specify these entries
Load "dri"
in the Section "Module" of your /etc/X11/XF86Config.
================================================================

Vérification de la configuration X actuelle. Ici, 3Ddiag indique immédiatement que le module nécessaire à l'accélération (dri) n'est pas entré.

==
Checking GLU/glut runtime configuration:
  GLU  ... done (package mesaglu)
  glut ... done (package mesaglut)
==

Note relative à Mesasoft : lorsque vous constatez, comme déjà indiqué, que votre système est instable avec 3D, utilisez absolument le Software Rendering cité plus haut. Pour cela, supprimez toutes les entrées relatives aux pilotes spéciaux ou modules 3D dans le fichier /etc/X11/XF86Config.

Si aucune carte 3D correcte n'a été trouvée, le message suivant apparaît :

================================================================
No 3D capable graphic chipset found!
================================================================

Entrées dans XF86Config

Toutes les entrées relatives à la fonctionnalité 3D sont contenues dans deux sections de /etc/X11/XF86Config qui sont :

  1. Section "Module"
  2. Section "Device"

Ces sections ont l'aspect suivant :

Section"Module"

Section "Module"
  Load         "type1"
  Load         "speedo"
  Load         "extmod"
  Load         "freetype"
EndSection

Entrez ici simplement les modules qui sont nécessaires au fonctionnement de votre carte graphique. La section aura ensuite l'aspect suivant :

Section "Module"
  Load         "type1"
  Load         "speedo"
  Load         "extmod"
  Load         "freetype"
  Load         "glx"
EndSection

Pour une carte 3D basée dri, l'entrée est telle que suit :

Section "Module"
  Load         "type1"
  Load         "speedo"
  Load         "extmod"
  Load         "freetype"
  Load         "glx"
  Load         "dri"
EndSection

La section "Device" :

Section "Device"
  BoardName    "RIVA TNT2 Model 64"
  BusID        "1:0:0"
  Driver       "nv"
  Identifier   "Device[0]"
  Screen       0
  VendorName   "NVidia"
EndSection

Le pilote NVIDIA offre un grand nombre de possibilités de configuration qui sont décrites dans le README. Vous devriez toujours lire ce README pour activer ou désactiver une fonction. Vous trouverez ici un exemple de l'aspect possible de la section "Driver" avec un pilote NVIDIA :

Section "Device"
  BoardName    "RIVA TNT2 Model 64"	# Type de carte
  BusID        "1:0:0"
  Driver       "nvidia"			# Pilote 3D
  Identifier   "Device[0]"
  Option       "SWCursor"		# en cas de problème d'affichage
					# avec le curseur de la souris
  Screen       0
  VendorName   "NVidia"
  Option       "NvAGP" "3"		# charge tout d'abord NvAGP puis
					# agpgart.
					# Ensuite, un réamorçage est
					# nécessaite !
					# Vous trouverez plus d'informations
					# dans le README
  Option       "NoLogo"			# Pas de logo NVIDIA lorsque X
					# démarre
  Option       "CursorShadow"		# Agréable, tout simplement
EndSection

Une option supplémentaire qui peut avoir son importance est l'option "IgnoreEDID". Après l'installation des paquetages NVIDIA, vous trouverez la documentation relative au pilote sous /usr/share/doc/packages/nv_glx/README. Pour les cartes graphiques Kyro, veuillez consulter également l'article en:SDB:Support for Graphics Cards with Kyro Chipsets ) .

Veillez à corriger l'entrée Driver dans la section "Device" lorsque vous utilisez d'autres pilotes. Dans le cas de cartes graphiques PowerVR, par exemple, vous devez entrer powervr comme pilote.

Droits d'utilisateurs

Lorsque vous activez la fonction 3D, vous devez veiller à ce que les utilisateurs qui ont le droit d'utiliser 3D sur leur système soient bien entrés dans le groupe video. Uniquement ces utilisateurs ont les droits nécessaires pour accéder aux périphériques adéquats (par exemple /dev/nvidia*, /dev/3dfx, /dev/dri/card0). Lors d'une installation standard de SUSE LINUX, par défaut, le premier utilisateur appartient à ce groupe.

Pour entrer un utilisateur dans le groupe video, entrer son nom d'utilisateur dans le groupe correspondant dans le fichier /etc/group hinzu.

Test de la fonction 3D

Pour tester si tous les paramètres sont correctement configurés, vous disposez d'une série de programmes avec lesquels vous pouvez vérifier la fonctionnalité 3D :

Avec la commande

glxinfo | grep rendering

vérifiez si la fonctionnalité 3D est activée. La sortie devrait indiquer la valeur suivante&nsp;:

direct rendering: Yes

pour que les programmes qui nécessitent la fonctionnalité 3D puissent démarrer.

Comme programme de test, vous pouvez utiliser les applications suivantes :

  • gears (paquetage mesa-4.0.1-118)
  • openuniverse (paquetage openuniverse)
  • tuxracer (paquetage tuxracer)
  • armagetron (paquetage armagetron)

Exemple Gears : démarrez gears dans un terminal (ALT+F2 -> xterm -> Exécuter). Une petite fenêtre avec trois roues crénelées qui tournent s'ouvre et les valeurs fps (Frames per Second) sont affichées dans le terminal. Sous 150fps, on ne peut pas considérer qu'il y a accélération matérielle. Si l'accélération n'est pas active, vous obtenez le message suivant :

GLUT: Fatal Error in gears: OpenGL GLX extension not supported by
      display: :0.0

Documentation

Paquetage Documentation sous Téléchargement / Série
nVidia NVIDIA_kernel*.rpm
NVIDIA_GLX*.rpm
/usr/share/doc/packages/nv_glx/README

http://www.nvidia.com/content/drivers/drivers.asp

DRI xf86*.rpm

/usr/X11R6/lib/X11/doc/README.DRI
http://dri.sf.net

Serie x
Mesa/Glide mesa3dfx /usr/share/doc/packages/mesa3dfx/README.SuSE
/usr/share/doc/packages/mesa/README.3DFX
x3d
Kyro powervr /usr/share/doc/powervr/README

http://www.powervr.com/Downloads.asp

en:SDB:X Server Configuration with SaX2

SDB:Configuration du serveur X à l'aide de SaX2 (depuis SUSE Linux 8.1)

en:SDB:Support for Graphics Cards with Kyro Chipsets