Como testar se minha placa de vídeo tem suporte 3D?

10

Como posso testar se minha placa de vídeo tem suporte 3D?

Alguém disse para usar fgl_glxgears , mas ele não existe aqui, nem mesmo para instalação com o apt-get.

    
por Tom Brito 22.03.2011 / 18:22

3 respostas

14

Este é um tópico com um lote de informações incorretas / desatualizadas / incorretas disponíveis.

Coisas que não funcionam :

  • Verificando "renderização direta: sim":
    Este não é um indicador preciso. O renderizador de software também suporta renderização direta, por isso, mesmo que você não tenha suporte a hardware 3D, você pode ter direct rendering: Yes
  • Verificando o FPS de glxgears :
    Este não é um indicador preciso também. Versões recentes do Ubuntu terão o vsync habilitado, então glxgears será executado tão rápido quanto a taxa de atualização da tela. Isso significa que glxgears quase sempre imprime um FPS de 60 ou por aí.

O que funciona :

A saída de glxinfo contém as informações que desejamos.

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…

A sequência do renderizador do OpenGL: a linha Mesa DRI para o Intel® GM45 Express Chipset indica que estou usando meu chip Intel GM45 para renderizar em 3D.

Cadeia de versão do OpenGL: 2.1 O Mesa 7.10.1 indica a versão de referência do OpenGL que este driver / hardware suporta (OpenGL 2.1) e a versão do Mesa usada (7.10.1).

Por fim, a renderização direta : Sim no topo dos dois campos anteriores indica que o driver está funcionando corretamente com um contexto de renderização direta. Isso nunca será Não a menos que algo esteja realmente errado com sua instalação (ou você esteja fazendo algo estranho, como se conectar a um servidor X remoto).

Exemplos de saída glxinfo ruim:

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,
</code></pre>

Here we've got no hardware acceleration, so the 'Software Rasterizer' is providing (slow!) 3D support.

<pre><code>
 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,

Aqui quebramos a renderização direta apontando LIBGL em um DRIVERS_PATH inexistente. O caminho de renderização direta falha:

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

Mas a renderização indireta ainda está funcionando, porque o servidor de exibição carregou o driver

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

(Note que a versão do OpenGL anunciada é agora OpenGL 1.4 - esta é a mais nova versão do OpenGL para a qual existe um protocolo de renderização indireta).

    
por RAOF 28.03.2011 / 08:06
0

Experimente glxgears , ou glxinfo .

    
por Rafał Cieślak 22.03.2011 / 18:39
0

eu posso ver engrenagens, e pode-se usar

PARA USUÁRIOS DA AMD sudo amdcccle (para configurar as propriedades gráficas).

    
por Ankit 19.07.2012 / 13:43