我想使用 Xvfb 无头测试 WebGL 代码。有人知道该怎么做吗?
我有 2 台机器 - 都运行 Ubuntu。一个带有 NVidia 卡,一个带有 ATI:
英伟达机器:
ipmi:~ $>xvfb-run glxinfo
name of display: :455
display: :455 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_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,
GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_MESA_copy_sub_buffer, GLX_INTEL_swap_event
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
...
ipmi:~ $>xvfb-run glxgears
3725 frames in 5.0 seconds = 741.884 FPS
3840 frames in 5.0 seconds = 767.310 FPS
4080 frames in 5.0 seconds = 814.811 FPS
4120 frames in 5.0 seconds = 821.859 FPS
ATI机器:
shaka:~ $>xvfb-run glxinfo
name of display: :99
display: :99 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,
GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_MESA_copy_sub_buffer, GLX_INTEL_swap_event
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
shaka:~ $>xvfb-run glxgears
4326 frames in 5.0 seconds = 865.095 FPS
4343 frames in 5.0 seconds = 868.540 FPS
即使 shaka 支持使用 Mesa 直接渲染,我也无法获得 WebGL 上下文。
谢谢!