direct rendering: YesC'est que vous utilisez un accélération matérielle 3D. Sinon c'est que votre carte vidéo n'offre pas ce service ou que les drivers 3D ne sont pas installés correctement (voir section « installation drivers 3D ».) Vous pouvez aussi tester avec la commande glxgears si tout fonctionne bien. Si vous n'avez pas la commande glxinfo, il faut sans doute (ré)installer certains logiciels. Les fichiers GL sont dans différents packages. Voici par exemple la configuration sur Mandrake 10.0:
/usr/X11R6/bin/glxgears /usr/X11R6/bin/glxinfo
/usr/X11R6/lib/libGL.so.1 /usr/X11R6/lib/libGL.so.1.2 /usr/X11R6/lib/tls/libGL.so.1 /usr/X11R6/lib/tls/libGL.so.1.2
/usr/X11R6/lib/libGL.so.1.0 /usr/X11R6/lib/libGL.so.1.4.502 /usr/X11R6/lib/libGLwrapper.so.0.2.0
/usr/X11R6/lib/libGLU.so.1 /usr/X11R6/lib/libGLU.so.1.3.502
/usr/X11R6/lib/libglut.so.3 /usr/X11R6/lib/libglut.so.3.7.1
/usr/X11R6/bin/glutfx /usr/X11R6/bin/stex3d
/usr/X11R6/lib/libGL.so /usr/X11R6/include/GL/gl.h
/usr/X11R6/lib/libGLU.so /usr/X11R6/include/GL/glu.h
/usr/X11R6/lib/libglut.so /usr/X11R6/include/GL/glut.h
gcc -Wall -o test1 test1.c -L/usr/X11R6/lib -lX11 -lGLet le programme test2.c compilé avec :
gcc -Wall -o test2 test2.c -L/usr/X11R6/lib -lglut -lGLU -lm -lGL -lX11
....
Section "Module"
....
Load "glx" # 3D layer
Load "dri"
EndSection
Section "DRI"
Mode 0666
EndSection
....
Vérifier alors que glxinfo affiche « direct rendering: Yes ».
Note: ces carte n'ont pas non plus de support XVideo en standard. Les drivers gérant XVideo sont disponibles ici.
sh NVIDIA-Linux-x86-1.0-5336-pkg1.runAttention si votre noyau n'est pas standard, vous devez avoir les source du noyau utilisés. Sous mandrake par exemple, le package kernel-source doit être installé.
Cette installation supprime les librairies OpenGL déjà existantes, si on veut les récupérer, on peut exécuter les commandes:
mkdir /usr/lib/vieuxgl
cd /var/lib/nvidia
grep '1..:' /var/lib/nvidia/log | while read vv; do
f1=`echo $vv | awk -F: '{print $1}'`
f2=$(basename `echo $vv | awk -F: '{print $2}'`)
cp -p $f1 /usr/lib/vieuxgl/$f2
done
De tout façon, en cas de problème restaurer ces librairies
en désinstallant les drivers NVIDIA:
sh /home/daurat/import/NVIDIA-Linux-x86-1.0-5336-pkg1.run --uninstall(C'est en particulier recommandé si vous mettez à jour votre noyau ou XFree86)
La librairie OpenGL fournie par NVIDIA est incompatible avec les librairies utilisées par XFree86, ou les librairies Mesa. Cela peut poser des problèmes si on veut par exemple utilisant un serveur X distant qui n'a pas de carte NVIDIA. Une solution consiste à utiliser une librairie factice qui en va choisir quelle est la librairie utilisable. Cette solution est déjà proposée pour le choix entre librairie Mesa et GLX. L'extension au drivers NVIDIA se trouve ici. Pour l'installer, récupérer les vieilles librairies OpenGL avec la méthode décrites plus haut, puis installer GLwrapper en effectuant les commandes :
tar jxvf GLwrapper_nv-0.2.0.1.tar.bz2
cd GLwrapper_nv-0.2.0.1
make prefixlib=/usr/lib/vieuxgl mesa_so_version=1.4.502 \
nvidia_so_version=1.0.5336 nvidiaprefixlib=/usr/lib/tls
su
make install prefixlib=/usr/lib/tls
ldconfig
| Alain Daurat |
|