Jak sprawdzić, czy moja karta wideo obsługuje 3D?

10

Jak mogę sprawdzić, czy moja karta wideo obsługuje 3D?

Ktoś kazał użyć fgl_glxgears, ale tutaj nie istnieje, nawet w przypadku instalacji za pomocą apt-get.

Tom Brito
źródło

Odpowiedzi:

16

Jest to temat z wieloma dostępnymi złymi / nieaktualnymi / niepoprawnymi informacjami.

Rzeczy, które nie działają:

  • Sprawdzanie „renderowania bezpośredniego: tak”:
    To nie jest dokładny wskaźnik. Program do renderowania obsługuje również renderowanie bezpośrednie, więc nawet jeśli nie masz sprzętowej obsługi 3D, możesz to zrobićdirect rendering: Yes
  • Sprawdzanie FPS glxgears:
    Nie jest to również dokładny wskaźnik. Najnowsze wersje Ubuntu będą miały włączoną funkcję vsync, więc 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).

RAOF
źródło
Hej, stary :) Więc - mam 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ę
pesho hristov
0

Spróbuj glxgearszamiast tego lub glxinfo.

Rafał Cieślak
źródło
fajnie .. jeśli widzę, że koła zębate oznaczają obsługę 3D?
Tom Brito
Tak, dokładnie. :)
Rafał Cieślak
2
A więc, coś w tym stylu, tak. Ponieważ mamy program do renderowania oprogramowania, musisz dość poważnie zepsuć swój system, zanim glxgears zostaną zepsute tak bardzo, że nie będzie wyświetlać biegów!
RAOF,
Widzę też koła zębate, ale jednocześnie narzekam na niektóre aplikacje, zwłaszcza gry ... Czy możesz rzucić okiem? askubuntu.com/questions/1174810/…
pesho hristov
0

Dzięki glxgearsmożesz zobaczyć koła zębate, a użytkownicy AMD mogą użyć do skonfigurowania właściwości graficznych:

sudo amdcccle
Ankit
źródło