Odpowiedzi:
Jest to temat z wieloma dostępnymi złymi / nieaktualnymi / niepoprawnymi informacjami.
Rzeczy, które nie działają:
direct rendering: Yesglxgears: glxgearsbędą działać tak szybko, jak częstotliwość odświeżania ekranu. Oznacza to, glxgearsże prawie zawsze wydrukuje FPS 60lub około niego.Co robi pracy:
Dane wyjściowe glxinfozawierają żądane informacje.
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…
OpenGL renderer ciąg: Mesa Mobile Intel® GM45 DRI ekspresowe Chipset linia wskazuje, że używam mój procesor Intel GM45 zrobić renderowania 3D.
Ciąg wersji OpenGL: 2.1 Mesa 7.10.1 wskazuje podstawową wersję OpenGL obsługiwaną przez ten sterownik / sprzęt (OpenGL 2.1) oraz używaną wersję Mesa (7.10.1).
Wreszcie, bezpośrednie renderowanie: Tak na poprzednich dwóch polach wskazuje, że sterownik działa poprawnie w kontekście bezpośredniego renderowania. Nigdy nie będzie to Nie, chyba że coś naprawdę popsuło się podczas instalacji (lub robisz coś dziwnego, na przykład łącząc się ze zdalnym serwerem X).
Przykłady złej glxinfowydajności:
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,
Tutaj nie mamy akceleracji sprzętowej, więc Software Rasterizerzapewnia (wolno!) Obsługę 3D.
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,
Tutaj zerwaliśmy bezpośredni rendering, wskazując LIBGL na nieistniejącą ścieżkę DRIVERS_PATH. Bezpośrednia ścieżka renderowania kończy się niepowodzeniem:
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)
Ale renderowanie pośrednie nadal działa, ponieważ serwer wyświetlania załadował sterownik
OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset
OpenGL version string: 1.4 (2.1 Mesa 7.10.1)
(Zauważ, że reklamowana wersja OpenGL to teraz OpenGL 1.4 - jest to najnowsza wersja OpenGL, dla której istnieje pośredni protokół renderowania).
Spróbuj glxgearszamiast tego lub glxinfo.
badwyjście glxinfo. Zatem - jak ustawićDRIVERS_PATHzmienną? I do czego powinienem to ustawić? Mam zainstalowany program Intel Graphcis i Intel. Z góry dziękuję