Antworten:
Dies ist ein Thema mit vielen schlechten / veralteten / falschen Informationen.
Dinge, die nicht funktionieren:
direct rendering: Yes
glxgears
: glxgears
nur die Bildschirmaktualisierungsrate ausgeführt wird. Dies bedeutet, glxgears
dass fast immer ein FPS von 60
oder ungefähr gedruckt wird .Was funktioniert :
Die Ausgabe von glxinfo
enthält die gewünschten Informationen.
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
… snip …
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset
OpenGL version string: 2.1 Mesa 7.10.1
OpenGL shading language version string: 1.20
OpenGL extensions:
… snip long extensions list…
Die OpenGL-Renderer-Zeichenfolge: Mesa DRI Mobile Intel® GM45 Express-Chipsatz zeigt an, dass ich meinen Intel GM45-Chip für das 3D-Rendering verwende.
OpenGL-Versionszeichenfolge: 2.1 Mesa 7.10.1 gibt die von diesem Treiber / der Hardware unterstützte OpenGL-Basisversion (OpenGL 2.1) und die verwendete Version von Mesa (7.10.1) an.
Schließlich direktes Rendern: Ja über den beiden vorherigen Feldern zeigt an, dass der Treiber ordnungsgemäß mit einem direkten Renderkontext arbeitet. Dies wird niemals Nein sein, es sei denn, etwas ist wirklich mit Ihrer Installation durcheinander (oder Sie tun etwas Seltsames, wie das Herstellen einer Verbindung zu einem Remote-X-Server).
Beispiele für schlechte glxinfo
Ausgabe:
LIBGL_ALWAYS_SOFTWARE=1 glxinfo
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_INTEL_swap_event
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap,
GLX_INTEL_swap_event
GLX version: 1.4
GLX extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_OML_swap_method,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_INTEL_swap_event
OpenGL vendor string: Mesa Project
OpenGL renderer string: Software Rasterizer
OpenGL version string: 2.1 Mesa 7.10.1
OpenGL shading language version string: 1.20
OpenGL extensions:
GL_ARB_copy_buffer, GL_ARB_depth_clamp, GL_ARB_depth_texture,
Hier haben wir keine Hardwarebeschleunigung, daher Software Rasterizer
bietet die (langsame!) 3D-Unterstützung.
LIBGL_DRIVERS_PATH=foo glxinfo
name of display: :0
display: :0 screen: 0
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_INTEL_swap_event
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap,
GLX_INTEL_swap_event
GLX version: 1.4
GLX extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap,
GLX_INTEL_swap_event
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset
OpenGL version string: 1.4 (2.1 Mesa 7.10.1)
OpenGL extensions:
GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_fragment_program,
GL_ARB_fragment_program_shadow, GL_ARB_multisample, GL_ARB_multitexture,
Hier haben wir das direkte Rendern unterbrochen, indem wir LIBGL auf ein nicht vorhandenes DRIVERS_PATH gerichtet haben. Der direkte Rendering-Pfad schlägt fehl:
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)
Das indirekte Rendern funktioniert jedoch weiterhin, da der Anzeigeserver den Treiber geladen hat
OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset
OpenGL version string: 1.4 (2.1 Mesa 7.10.1)
(Beachten Sie, dass die angekündigte OpenGL-Version jetzt OpenGL 1.4 ist - dies ist die neueste OpenGL-Version, für die es ein indirektes Rendering-Protokoll gibt.)
Versuchen Sie es glxgears
stattdessen oder glxinfo
.
bad
glxinfo Ausgabe. Dann - wie kann ich dieDRIVERS_PATH
Variable setzen? Und auf was soll ich es einstellen? Ich habe Intel Graphcis und Intel Treiber installiert. Vielen Dank im Voraus