¿Cómo probar si mi tarjeta de video es compatible con 3D?

10

¿Cómo puedo probar si mi tarjeta de video es compatible con 3D?

Alguien le dijo que lo usara fgl_glxgears, pero no existe aquí, ni siquiera para la instalación con apt-get.

Tom Brito
fuente

Respuestas:

16

Este es un tema con mucha información mala / desactualizada / incorrecta disponible.

Cosas que no funcionan:

  • Comprobación de "representación directa: Sí":
    este no es un indicador preciso. El renderizador de software también admite la representación directa, por lo que incluso si no tiene soporte 3D de hardware, puede tenerdirect rendering: Yes
  • Comprobación del FPS de glxgears:
    Este tampoco es un indicador preciso. Las versiones recientes de Ubuntu tendrán vsync habilitado, por glxgearslo que solo se ejecutarán tan rápido como la frecuencia de actualización de la pantalla. Esto significa glxgearsque casi siempre imprimirá un FPS de 60o alrededor.

Lo que hace el trabajo:

La salida de glxinfocontiene la información que queremos.

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…

La cadena de representación de OpenGL: la línea Mesa DRI Mobile Intel® GM45 Express Chipset indica que estoy usando mi chip Intel GM45 para hacer renderizado 3D.

Cadena de versión de OpenGL: 2.1 Mesa 7.10.1 indica la versión básica de OpenGL que admite este controlador / hardware (OpenGL 2.1) y la versión de Mesa que se está utilizando (7.10.1).

Finalmente, representación directa: Sí, en la parte superior de los dos campos anteriores indica que el controlador está funcionando correctamente con un contexto de representación directa. Esto nunca será No a menos que algo esté realmente mal con su instalación (o esté haciendo algo extraño, como conectarse a un servidor X remoto).

Ejemplos de glxinforesultados incorrectos :

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,

Aquí no tenemos aceleración de hardware, por lo Software Rasterizerque proporciona soporte 3D (¡lento!).

 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,

Aquí hemos roto el renderizado directo apuntando LIBGL a un DRIVERS_PATH inexistente. La ruta de representación directa falla:

direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)

Pero el renderizado indirecto todavía funciona, porque el servidor de visualización ha cargado el controlador

OpenGL renderer string: Mesa DRI Mobile Intel® GM45 Express Chipset
OpenGL version string: 1.4 (2.1 Mesa 7.10.1)

(Tenga en cuenta que la versión de OpenGL anunciada ahora es OpenGL 1.4; esta es la versión más nueva de OpenGL para la que existe un protocolo de representación indirecta).

RAOF
fuente
Hola, hombre :) Entonces, tengo la badsalida de glxinfo. Entonces, ¿cómo puedo configurar la DRIVERS_PATHvariable? ¿Y a qué debo configurarlo? Tengo instalado Intel Graphcis y el controlador Intel. Gracias de antemano
pesho hristov
0

Intenta en su glxgearslugar, o glxinfo.

Rafał Cieślak
fuente
genial .. si veo los engranajes significa que tengo soporte para 3d?
Tom Brito
Sí, exactamente. :)
Rafał Cieślak
2
Así un poco. ¡Debido a que tenemos un procesador de software, necesitarás haber estropeado tu sistema bastante mal antes de que glxgears se rompa tanto que no muestre los engranajes!
RAOF
También veo los engranajes, pero al mismo tiempo me quejo de algunas aplicaciones, juegos específicamente ... ¿Puedes echar un vistazo? askubuntu.com/questions/1174810/…
pesho hristov
0

Con glxgearsusted puede ver engranajes, y los usuarios de AMD pueden usar para configurar las propiedades gráficas:

sudo amdcccle
Ankit
fuente