Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not screenshot #1595

Open
rediskap opened this issue Nov 22, 2024 · 5 comments
Open

Not screenshot #1595

rediskap opened this issue Nov 22, 2024 · 5 comments

Comments

@rediskap
Copy link

In niri wm, where the smithay library is used, screenshots do not work! In the detailed thread YaLTeR/niri#807, they refer to smithay

@YaLTeR
Copy link
Contributor

YaLTeR commented Nov 22, 2024

It seems that downloading the screenshot texture from GPU to CPU fails in a way unexpected in Smithay code:

2024-11-15T19:37:13.717921Z ERROR smithay::backend::renderer::gles: [GL] GL_INVALID_ENUM in glBufferData(invalid usage: GL_STREAM_READ)
2024-11-15T19:37:13.718971Z ERROR smithay::backend::renderer::gles: [GL] GL_INVALID_OPERATION in glReadPixels(out of bounds PBO access)
2024-11-15T19:37:13.719081Z  WARN niri::input: error capturing screenshot: error copying texture
Caused by:
    Unsupported pixel format: DrmFourcc(AB24)
2024-11-15T19:37:17.534903Z ERROR smithay::backend::renderer::gles: [GL] GL_INVALID_ENUM in glBufferData(invalid usage: GL_STREAM_READ)
2024-11-15T19:37:17.534963Z ERROR smithay::backend::renderer::gles: [GL] GL_INVALID_OPERATION in glReadPixels(out of bounds PBO access)
2024-11-15T19:37:17.534982Z  WARN niri::input: error taking screenshot: error rendering
Caused by:
    0: error copying framebuffer
    1: Unsupported pixel format: DrmFourcc(AB24)
2024-11-15T19:37:20.300862Z ERROR smithay::backend::renderer::gles: [GL] GL_INVALID_ENUM in glBufferData(invalid usage: GL_STREAM_READ)
2024-11-15T19:37:20.300922Z ERROR smithay::backend::renderer::gles: [GL] GL_INVALID_OPERATION in glReadPixels(out of bounds PBO access)
2024-11-15T19:37:20.300949Z  WARN niri::input: error taking screenshot: error rendering
Caused by:
    0: error copying framebuffer
    1: Unsupported pixel format: DrmFourcc(AB24)

There's eglinfo output: https://github.com/user-attachments/files/17801961/egl.txt

System:

  • Distro: ArchLinux
  • GPU: Intel Mobile 4 Series Chipset Integrated G]
  • CPU: Intel(R) Celeron(R) 900 @ 2.19 GHz

@Drakulix
Copy link
Member

What format is the framebuffer in this case? (The full compositor log should show this.)

If the framebuffer uses ARGB, but niri is trying to read ABGR the driver might not be happy about this and doesn't do the swizzle for us.

Note that unsupported-pixel-format is a matchable GlesError by design, because OpenGL ES 2.0 doesn't guarantee that reading back a buffer with glReadPixels will work with anything but the framebuffers format. while also not guaranteeing, that reading BGRA_EXT will work at all.

Which leads to fun combinations of e.g. Mesa allowing to read BGRA on BGRA framebuffers, but nvidia doesn't, but is happy to do the swizzle for us. As a result this API is designed to be failable, so compositors could try both.

@YaLTeR
Copy link
Contributor

YaLTeR commented Nov 22, 2024

According to drm_info from https://github.com/user-attachments/files/17797382/drm_info.txt, the primary plane is XRGB8888. (Which may be notable considering niri only passes Argb/Abgr as supported color formats.)

During a screenshot, niri always creates a new Abgr8888 texture and renders to it from scratch, then downloads the result to CPU.

@Drakulix
Copy link
Member

Drakulix commented Nov 22, 2024

(Which may be notable considering niri only passes Argb/Abgr as supported color formats.)

No it's not. Internally smithay maps these to their X-variants for buffer allocation, if the A-variants aren't available, as the primary plane can obviously be opaque (if no underlays are present). (The GL Buffers are still alpha-variants to allow for blending.)

During a screenshot, niri always creates a new Abgr8888 texture and renders to it from scratch, then downloads the result to CPU.

Ah, so you are controlling the framebuffer- (the texture in this case) and read-format by not reading back directly from the plane buffer.

In that case the gl-format and type should be GL_RGBA and GL_UNSIGNED_BYTE (as seen here), which really should be supported reading the docs (see also usage here and error codes mapped to UnsupportedPixelFormat here). OpenGl ES 3.0 (which we may also bind) does add a few more error cases, but again nothing that should apply imo.

So the only reason I could think of is PBO's being unsupported, which we use for asynchronous read-back (which is also very heavily used in the multi-renderer). Reading about them, they are technically a GL ES 3.0 feature, if neither GL_ARB_pixel_buffer_object or GL_EXT_pixel_buffer_object are available, which according to the eglinfo-output is indeed not the case for this very barebones GL ES implementation from crocus.

So we probably need a new capability and a synchronous pixel download to fix this...

@chinatsu
Copy link

chinatsu commented Dec 20, 2024

I don't know if I've got any useful input here, but I'm running into the same issue with i915.

eglinfo

EGL client extensions string:
    EGL_EXT_client_extensions, EGL_EXT_device_base, 
    EGL_EXT_device_enumeration, EGL_EXT_device_query, EGL_EXT_explicit_device, 
    EGL_EXT_platform_base, EGL_EXT_platform_device, EGL_EXT_platform_wayland, 
    EGL_EXT_platform_x11, EGL_EXT_platform_xcb, 
    EGL_KHR_client_get_all_proc_addresses, EGL_KHR_debug, 
    EGL_KHR_platform_gbm, EGL_KHR_platform_wayland, EGL_KHR_platform_x11, 
    EGL_MESA_platform_gbm, EGL_MESA_platform_surfaceless

GBM platform:
EGL API version: 1.4
EGL vendor string: Mesa Project
EGL version string: 1.4
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: i915
EGL extensions string:
    EGL_EXT_buffer_age, EGL_EXT_config_select_group, 
    EGL_EXT_image_dma_buf_import, EGL_EXT_image_dma_buf_import_modifiers, 
    EGL_EXT_pixel_format_float, EGL_EXT_surface_compression, 
    EGL_KHR_cl_event2, EGL_KHR_config_attribs, EGL_KHR_context_flush_control, 
    EGL_KHR_create_context, EGL_KHR_create_context_no_error, 
    EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, 
    EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image, 
    EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image, 
    EGL_KHR_image, EGL_KHR_image_base, EGL_KHR_image_pixmap, 
    EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_gl_interop, 
    EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver, 
    EGL_MESA_x11_native_visual_id, EGL_WL_bind_wayland_display
OpenGL compatibility profile vendor: Mesa Project
OpenGL compatibility profile renderer: i915 (chipset: 915GM)
OpenGL compatibility profile version: 2.1 Mesa 24.3.1-arch1.3.0
OpenGL compatibility profile shading language version: 1.20
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_shader_trinary_minmax, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_copy_buffer, 
    GL_ARB_debug_output, GL_ARB_depth_texture, GL_ARB_draw_buffers, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_instanced, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_program, 
    GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, 
    GL_ARB_framebuffer_object, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multisample, 
    GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_parallel_shader_compile, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_robustness, GL_ARB_sampler_objects, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_objects, GL_ARB_shading_language_100, 
    GL_ARB_shading_language_include, GL_ARB_shadow, GL_ARB_sync, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 
    GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
    GL_ARB_texture_storage, GL_ARB_transpose_matrix, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_image_storage_compression, 
    GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, GL_EXT_direct_state_access, 
    GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_fog_coord, 
    GL_EXT_framebuffer_blit, GL_EXT_framebuffer_object, 
    GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, 
    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, 
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_storage, GL_EXT_vertex_array, 
    GL_EXT_vertex_array_bgra, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_pack_invert, 
    GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NV_ES1_1_compatibility, 
    GL_NV_blend_square, GL_NV_copy_image, GL_NV_fog_distance, 
    GL_NV_half_float, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile vendor: Mesa Project
OpenGL ES profile renderer: i915 (chipset: 915GM)
OpenGL ES profile version: OpenGL ES 2.0 Mesa 24.3.1-arch1.3.0
OpenGL ES profile shading language version: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:
    GL_ANGLE_pack_reverse_row_order, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_APPLE_sync, 
    GL_APPLE_texture_max_level, GL_EXT_blend_minmax, 
    GL_EXT_compressed_ETC1_RGB8_sub_texture, GL_EXT_debug_label, 
    GL_EXT_discard_framebuffer, GL_EXT_draw_buffers, 
    GL_EXT_draw_elements_base_vertex, GL_EXT_draw_instanced, 
    GL_EXT_frag_depth, GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, 
    GL_EXT_multi_draw_arrays, GL_EXT_read_format_bgra, 
    GL_EXT_separate_shader_objects, GL_EXT_shadow_samplers, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_s3tc_srgb, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_storage, GL_EXT_texture_type_2_10_10_10_REV, 
    GL_EXT_unpack_subimage, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_bgra, 
    GL_MESA_sampler_objects, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_pack_subimage, GL_NV_pixel_buffer_object, GL_NV_read_buffer, 
    GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_depth24, GL_OES_depth_texture, 
    GL_OES_draw_elements_base_vertex, GL_OES_element_index_uint, 
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_required_internalformat, 
    GL_OES_rgb8_rgba8, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_npot, 
    GL_OES_vertex_array_object, GL_OES_vertex_half_float
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x30335241--         y  y  y     win
0x02 32  0 10 10 10  2 24  0  0 0 0x30335241--         y  y  y     win
0x03 32  0 10 10 10  2 24  8  0 0 0x30335241--         y  y  y     win
0x04 32  0  8  8  8  8  0  0  0 0 0x34325241--         y  y  y     win
0x05 32  0  8  8  8  8 24  0  0 0 0x34325241--         y  y  y     win
0x06 32  0  8  8  8  8 24  8  0 0 0x34325241--         y  y  y     win
0x07 24  0  8  8  8  0  0  0  0 0 0x34325258--         y  y  y     win
0x08 24  0  8  8  8  0 24  0  0 0 0x34325258--         y  y  y     win
0x09 24  0  8  8  8  0 24  8  0 0 0x34325258--         y  y  y     win
0x0a 16  0  5  6  5  0  0  0  0 0 0x36314752--         y  y  y     win
0x0b 16  0  5  6  5  0 24  0  0 0 0x36314752--         y  y  y     win
0x0c 16  0  5  6  5  0 24  8  0 0 0x36314752--         y  y  y     win
0x0d 16  0  5  5  5  1  0  0  0 0 0x35315241--         y  y  y     win
0x0e 16  0  5  5  5  1 24  0  0 0 0x35315241--         y  y  y     win
0x0f 16  0  5  5  5  1 24  8  0 0 0x35315241--         y  y  y     win

Wayland platform:
EGL API version: 1.4
EGL vendor string: Mesa Project
EGL version string: 1.4
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: i915
EGL extensions string:
    EGL_EXT_buffer_age, EGL_EXT_config_select_group, 
    EGL_EXT_image_dma_buf_import, EGL_EXT_image_dma_buf_import_modifiers, 
    EGL_EXT_pixel_format_float, EGL_EXT_present_opaque, 
    EGL_EXT_surface_compression, EGL_EXT_swap_buffers_with_damage, 
    EGL_KHR_cl_event2, EGL_KHR_config_attribs, EGL_KHR_context_flush_control, 
    EGL_KHR_create_context, EGL_KHR_create_context_no_error, 
    EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, 
    EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image, 
    EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image, 
    EGL_KHR_image_base, EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_swap_buffers_with_damage, 
    EGL_KHR_wait_sync, EGL_MESA_configless_context, EGL_MESA_drm_image, 
    EGL_MESA_gl_interop, EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver, 
    EGL_MESA_x11_native_visual_id, EGL_WL_bind_wayland_display, 
    EGL_WL_create_wayland_buffer_from_image
OpenGL compatibility profile vendor: Mesa Project
OpenGL compatibility profile renderer: i915 (chipset: 915GM)
OpenGL compatibility profile version: 2.1 Mesa 24.3.1-arch1.3.0
OpenGL compatibility profile shading language version: 1.20
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_shader_trinary_minmax, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_copy_buffer, 
    GL_ARB_debug_output, GL_ARB_depth_texture, GL_ARB_draw_buffers, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_instanced, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_program, 
    GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, 
    GL_ARB_framebuffer_object, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multisample, 
    GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_parallel_shader_compile, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_robustness, GL_ARB_sampler_objects, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_objects, GL_ARB_shading_language_100, 
    GL_ARB_shading_language_include, GL_ARB_shadow, GL_ARB_sync, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 
    GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
    GL_ARB_texture_storage, GL_ARB_transpose_matrix, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_image_storage_compression, 
    GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, GL_EXT_direct_state_access, 
    GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_fog_coord, 
    GL_EXT_framebuffer_blit, GL_EXT_framebuffer_object, 
    GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, 
    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, 
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_storage, GL_EXT_vertex_array, 
    GL_EXT_vertex_array_bgra, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_pack_invert, 
    GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NV_ES1_1_compatibility, 
    GL_NV_blend_square, GL_NV_copy_image, GL_NV_fog_distance, 
    GL_NV_half_float, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile vendor: Mesa Project
OpenGL ES profile renderer: i915 (chipset: 915GM)
OpenGL ES profile version: OpenGL ES 2.0 Mesa 24.3.1-arch1.3.0
OpenGL ES profile shading language version: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:
    GL_ANGLE_pack_reverse_row_order, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_APPLE_sync, 
    GL_APPLE_texture_max_level, GL_EXT_blend_minmax, 
    GL_EXT_compressed_ETC1_RGB8_sub_texture, GL_EXT_debug_label, 
    GL_EXT_discard_framebuffer, GL_EXT_draw_buffers, 
    GL_EXT_draw_elements_base_vertex, GL_EXT_draw_instanced, 
    GL_EXT_frag_depth, GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, 
    GL_EXT_multi_draw_arrays, GL_EXT_read_format_bgra, 
    GL_EXT_separate_shader_objects, GL_EXT_shadow_samplers, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_s3tc_srgb, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_storage, GL_EXT_texture_type_2_10_10_10_REV, 
    GL_EXT_unpack_subimage, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_bgra, 
    GL_MESA_sampler_objects, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_pack_subimage, GL_NV_pixel_buffer_object, GL_NV_read_buffer, 
    GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_depth24, GL_OES_depth_texture, 
    GL_OES_draw_elements_base_vertex, GL_OES_element_index_uint, 
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_required_internalformat, 
    GL_OES_rgb8_rgba8, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_npot, 
    GL_OES_vertex_array_object, GL_OES_vertex_half_float
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--         y  y  y     win
0x02 32  0 10 10 10  2 24  0  0 0 0x00--         y  y  y     win
0x03 32  0 10 10 10  2 24  8  0 0 0x00--         y  y  y     win
0x04 32  0  8  8  8  8  0  0  0 0 0x00--         y  y  y     win
0x05 32  0  8  8  8  8 24  0  0 0 0x00--         y  y  y     win
0x06 32  0  8  8  8  8 24  8  0 0 0x00--         y  y  y     win
0x07 24  0  8  8  8  0  0  0  0 0 0x00--         y  y  y     win
0x08 24  0  8  8  8  0 24  0  0 0 0x00--         y  y  y     win
0x09 24  0  8  8  8  0 24  8  0 0 0x00--         y  y  y     win
0x0a 16  0  5  6  5  0  0  0  0 0 0x00--         y  y  y     win
0x0b 16  0  5  6  5  0 24  0  0 0 0x00--         y  y  y     win
0x0c 16  0  5  6  5  0 24  8  0 0 0x00--         y  y  y     win
0x0d 16  0  5  5  5  1  0  0  0 0 0x00--         y  y  y     win
0x0e 16  0  5  5  5  1 24  0  0 0 0x00--         y  y  y     win
0x0f 16  0  5  5  5  1 24  8  0 0 0x00--         y  y  y     win
0x10 16  0  4  4  4  4  0  0  0 0 0x00--         y  y  y     win
0x11 16  0  4  4  4  4 24  0  0 0 0x00--         y  y  y     win
0x12 16  0  4  4  4  4 24  8  0 0 0x00--         y  y  y     win

X11 platform:
eglinfo: eglInitialize failed

Surfaceless platform:
EGL API version: 1.4
EGL vendor string: Mesa Project
EGL version string: 1.4
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: i915
EGL extensions string:
    EGL_EXT_config_select_group, EGL_EXT_image_dma_buf_import, 
    EGL_EXT_image_dma_buf_import_modifiers, EGL_EXT_pixel_format_float, 
    EGL_EXT_surface_compression, EGL_KHR_cl_event2, EGL_KHR_config_attribs, 
    EGL_KHR_context_flush_control, EGL_KHR_create_context, 
    EGL_KHR_create_context_no_error, EGL_KHR_fence_sync, 
    EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_renderbuffer_image, 
    EGL_KHR_gl_texture_2D_image, EGL_KHR_gl_texture_3D_image, 
    EGL_KHR_gl_texture_cubemap_image, EGL_KHR_image_base, 
    EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_gl_interop, 
    EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver, 
    EGL_MESA_x11_native_visual_id, EGL_WL_bind_wayland_display
OpenGL compatibility profile vendor: Mesa Project
OpenGL compatibility profile renderer: i915 (chipset: 915GM)
OpenGL compatibility profile version: 2.1 Mesa 24.3.1-arch1.3.0
OpenGL compatibility profile shading language version: 1.20
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_shader_trinary_minmax, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_copy_buffer, 
    GL_ARB_debug_output, GL_ARB_depth_texture, GL_ARB_draw_buffers, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_instanced, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_program, 
    GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, 
    GL_ARB_framebuffer_object, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multisample, 
    GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_parallel_shader_compile, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_robustness, GL_ARB_sampler_objects, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_objects, GL_ARB_shading_language_100, 
    GL_ARB_shading_language_include, GL_ARB_shadow, GL_ARB_sync, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 
    GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
    GL_ARB_texture_storage, GL_ARB_transpose_matrix, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_image_storage_compression, 
    GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, GL_EXT_direct_state_access, 
    GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_fog_coord, 
    GL_EXT_framebuffer_blit, GL_EXT_framebuffer_object, 
    GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, 
    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, 
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_storage, GL_EXT_vertex_array, 
    GL_EXT_vertex_array_bgra, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_pack_invert, 
    GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NV_ES1_1_compatibility, 
    GL_NV_blend_square, GL_NV_copy_image, GL_NV_fog_distance, 
    GL_NV_half_float, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile vendor: Mesa Project
OpenGL ES profile renderer: i915 (chipset: 915GM)
OpenGL ES profile version: OpenGL ES 2.0 Mesa 24.3.1-arch1.3.0
OpenGL ES profile shading language version: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:
    GL_ANGLE_pack_reverse_row_order, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_APPLE_sync, 
    GL_APPLE_texture_max_level, GL_EXT_blend_minmax, 
    GL_EXT_compressed_ETC1_RGB8_sub_texture, GL_EXT_debug_label, 
    GL_EXT_discard_framebuffer, GL_EXT_draw_buffers, 
    GL_EXT_draw_elements_base_vertex, GL_EXT_draw_instanced, 
    GL_EXT_frag_depth, GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, 
    GL_EXT_multi_draw_arrays, GL_EXT_read_format_bgra, 
    GL_EXT_separate_shader_objects, GL_EXT_shadow_samplers, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_s3tc_srgb, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_storage, GL_EXT_texture_type_2_10_10_10_REV, 
    GL_EXT_unpack_subimage, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_bgra, 
    GL_MESA_sampler_objects, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_pack_subimage, GL_NV_pixel_buffer_object, GL_NV_read_buffer, 
    GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_depth24, GL_OES_depth_texture, 
    GL_OES_draw_elements_base_vertex, GL_OES_element_index_uint, 
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_required_internalformat, 
    GL_OES_rgb8_rgba8, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_npot, 
    GL_OES_vertex_array_object, GL_OES_vertex_half_float
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--      a  y  y  y     pb
0x02 32  0 10 10 10  2 24  0  0 0 0x00--      a  y  y  y     pb
0x03 32  0 10 10 10  2 24  8  0 0 0x00--      a  y  y  y     pb
0x04 32  0  8  8  8  8  0  0  0 0 0x00--      a  y  y  y     pb
0x05 32  0  8  8  8  8 24  0  0 0 0x00--      a  y  y  y     pb
0x06 32  0  8  8  8  8 24  8  0 0 0x00--      a  y  y  y     pb
0x07 24  0  8  8  8  0  0  0  0 0 0x00--      y  y  y  y     pb
0x08 24  0  8  8  8  0 24  0  0 0 0x00--      y  y  y  y     pb
0x09 24  0  8  8  8  0 24  8  0 0 0x00--      y  y  y  y     pb
0x0a 16  0  5  6  5  0  0  0  0 0 0x00--      y  y  y  y     pb
0x0b 16  0  5  6  5  0 24  0  0 0 0x00--      y  y  y  y     pb
0x0c 16  0  5  6  5  0 24  8  0 0 0x00--      y  y  y  y     pb

Device platform:
Device #0:

EGL device extensions string:
    EGL_EXT_device_drm, EGL_EXT_device_drm_render_node
Platform Device platform:
EGL API version: 1.4
EGL vendor string: Mesa Project
EGL version string: 1.4
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: i915
EGL extensions string:
    EGL_EXT_config_select_group, EGL_EXT_image_dma_buf_import, 
    EGL_EXT_image_dma_buf_import_modifiers, EGL_EXT_pixel_format_float, 
    EGL_EXT_surface_compression, EGL_KHR_cl_event2, EGL_KHR_config_attribs, 
    EGL_KHR_context_flush_control, EGL_KHR_create_context, 
    EGL_KHR_create_context_no_error, EGL_KHR_fence_sync, 
    EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_renderbuffer_image, 
    EGL_KHR_gl_texture_2D_image, EGL_KHR_gl_texture_3D_image, 
    EGL_KHR_gl_texture_cubemap_image, EGL_KHR_image_base, 
    EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_gl_interop, 
    EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver, 
    EGL_MESA_x11_native_visual_id, EGL_WL_bind_wayland_display
OpenGL compatibility profile vendor: Mesa Project
OpenGL compatibility profile renderer: i915 (chipset: 915GM)
OpenGL compatibility profile version: 2.1 Mesa 24.3.1-arch1.3.0
OpenGL compatibility profile shading language version: 1.20
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_shader_trinary_minmax, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_copy_buffer, 
    GL_ARB_debug_output, GL_ARB_depth_texture, GL_ARB_draw_buffers, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_instanced, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_program, 
    GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, 
    GL_ARB_framebuffer_object, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multisample, 
    GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_parallel_shader_compile, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_robustness, GL_ARB_sampler_objects, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_objects, GL_ARB_shading_language_100, 
    GL_ARB_shading_language_include, GL_ARB_shadow, GL_ARB_sync, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_compression, 
    GL_ARB_texture_cube_map, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, 
    GL_ARB_texture_storage, GL_ARB_transpose_matrix, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_image_storage_compression, 
    GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, GL_EXT_direct_state_access, 
    GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_fog_coord, 
    GL_EXT_framebuffer_blit, GL_EXT_framebuffer_object, 
    GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, 
    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, 
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_storage, GL_EXT_vertex_array, 
    GL_EXT_vertex_array_bgra, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_pack_invert, 
    GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NV_ES1_1_compatibility, 
    GL_NV_blend_square, GL_NV_copy_image, GL_NV_fog_distance, 
    GL_NV_half_float, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile vendor: Mesa Project
OpenGL ES profile renderer: i915 (chipset: 915GM)
OpenGL ES profile version: OpenGL ES 2.0 Mesa 24.3.1-arch1.3.0
OpenGL ES profile shading language version: OpenGL ES GLSL ES 1.0.16
OpenGL ES profile extensions:
    GL_ANGLE_pack_reverse_row_order, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_APPLE_sync, 
    GL_APPLE_texture_max_level, GL_EXT_blend_minmax, 
    GL_EXT_compressed_ETC1_RGB8_sub_texture, GL_EXT_debug_label, 
    GL_EXT_discard_framebuffer, GL_EXT_draw_buffers, 
    GL_EXT_draw_elements_base_vertex, GL_EXT_draw_instanced, 
    GL_EXT_frag_depth, GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, 
    GL_EXT_multi_draw_arrays, GL_EXT_read_format_bgra, 
    GL_EXT_separate_shader_objects, GL_EXT_shadow_samplers, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_s3tc_srgb, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_storage, GL_EXT_texture_type_2_10_10_10_REV, 
    GL_EXT_unpack_subimage, GL_KHR_context_flush_control, GL_KHR_debug, 
    GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_MESA_bgra, 
    GL_MESA_sampler_objects, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_pack_subimage, GL_NV_pixel_buffer_object, GL_NV_read_buffer, 
    GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_depth24, GL_OES_depth_texture, 
    GL_OES_draw_elements_base_vertex, GL_OES_element_index_uint, 
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_required_internalformat, 
    GL_OES_rgb8_rgba8, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_npot, 
    GL_OES_vertex_array_object, GL_OES_vertex_half_float
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--      a  y  y  y     pb
0x02 32  0 10 10 10  2 24  0  0 0 0x00--      a  y  y  y     pb
0x03 32  0 10 10 10  2 24  8  0 0 0x00--      a  y  y  y     pb
0x04 32  0  8  8  8  8  0  0  0 0 0x00--      a  y  y  y     pb
0x05 32  0  8  8  8  8 24  0  0 0 0x00--      a  y  y  y     pb
0x06 32  0  8  8  8  8 24  8  0 0 0x00--      a  y  y  y     pb
0x07 24  0  8  8  8  0  0  0  0 0 0x00--      y  y  y  y     pb
0x08 24  0  8  8  8  0 24  0  0 0 0x00--      y  y  y  y     pb
0x09 24  0  8  8  8  0 24  8  0 0 0x00--      y  y  y  y     pb
0x0a 16  0  5  6  5  0  0  0  0 0 0x00--      y  y  y  y     pb
0x0b 16  0  5  6  5  0 24  0  0 0 0x00--      y  y  y  y     pb
0x0c 16  0  5  6  5  0 24  8  0 0 0x00--      y  y  y  y     pb

Device #1:

EGL device extensions string:
    EGL_EXT_device_drm_render_node, EGL_MESA_device_software
Platform Device platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: swrast
EGL extensions string:
    EGL_ANDROID_blob_cache, EGL_EXT_config_select_group, 
    EGL_EXT_create_context_robustness, EGL_EXT_image_dma_buf_import, 
    EGL_EXT_image_dma_buf_import_modifiers, EGL_EXT_pixel_format_float, 
    EGL_EXT_query_reset_notification_strategy, EGL_EXT_surface_compression, 
    EGL_KHR_cl_event2, EGL_KHR_config_attribs, EGL_KHR_context_flush_control, 
    EGL_KHR_create_context, EGL_KHR_create_context_no_error, 
    EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_colorspace, 
    EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image, 
    EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image, 
    EGL_KHR_image_base, EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_gl_interop, EGL_MESA_query_driver, 
    EGL_MESA_x11_native_visual_id
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: llvmpipe (LLVM 18.1.8, 128 bits)
OpenGL core profile version: 4.5 (Core Profile) Mesa 24.3.1-arch1.3.0
OpenGL core profile shading language version: 4.50
OpenGL core profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_draw_buffers_blend, GL_AMD_gpu_shader_int64, 
    GL_AMD_multi_draw_indirect, GL_AMD_pinned_memory, 
    GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture, 
    GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, 
    GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer, 
    GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, 
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, 
    GL_ARB_derivative_control, GL_ARB_direct_state_access, 
    GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, 
    GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments, 
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, 
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, 
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, 
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, 
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, 
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, 
    GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, 
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, 
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, 
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, 
    GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, 
    GL_ARB_shading_language_packing, GL_ARB_spirv_extensions, 
    GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, 
    GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, 
    GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, 
    GL_ARB_texture_buffer_range, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map_array, 
    GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, 
    GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_multisample, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, 
    GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, 
    GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, 
    GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, 
    GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, 
    GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, 
    GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object, 
    GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, 
    GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARM_shader_framebuffer_fetch_depth_stencil, 
    GL_ATI_blend_equation_separate, GL_ATI_meminfo, GL_ATI_texture_float, 
    GL_ATI_texture_mirror_once, GL_EXT_EGL_image_storage, 
    GL_EXT_EGL_image_storage_compression, GL_EXT_EGL_sync, GL_EXT_abgr, 
    GL_EXT_blend_equation_separate, GL_EXT_debug_label, GL_EXT_draw_buffers2, 
    GL_EXT_draw_instanced, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, 
    GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp, 
    GL_EXT_provoking_vertex, GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, 
    GL_EXT_shader_image_load_formatted, GL_EXT_shader_integer_mix, 
    GL_EXT_texture_array, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, 
    GL_EXT_texture_integer, GL_EXT_texture_mirror_clamp, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, 
    GL_EXT_transform_feedback, GL_EXT_vertex_array_bgra, 
    GL_EXT_vertex_attrib_64bit, GL_IBM_multimode_draw_arrays, 
    GL_INTEL_shader_atomic_float_minmax, GL_KHR_blend_equation_advanced, 
    GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, 
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, 
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, 
    GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_signed_rgba, GL_MESA_ycbcr_texture, 
    GL_NVX_gpu_memory_info, GL_NV_alpha_to_coverage_dither_control, 
    GL_NV_conditional_render, GL_NV_copy_image, GL_NV_depth_clamp, 
    GL_NV_packed_depth_stencil, GL_NV_shader_atomic_float, 
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_OVR_multiview, 
    GL_OVR_multiview2, GL_S3_s3tc
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 0 MB, largest block: 0 MB
    VBO free aux. memory - total: 711 MB, largest block: 711 MB
    Texture free memory - total: 0 MB, largest block: 0 MB
    Texture free aux. memory - total: 711 MB, largest block: 711 MB
    Renderbuffer free memory - total: 0 MB, largest block: 0 MB
    Renderbuffer free aux. memory - total: 711 MB, largest block: 711 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 4293633205 MB
    Total available memory: 4293634185 MB
    Currently available dedicated video memory: 0 MB
OpenGL compatibility profile vendor: Mesa
OpenGL compatibility profile renderer: llvmpipe (LLVM 18.1.8, 128 bits)
OpenGL compatibility profile version: 4.5 (Compatibility Profile) Mesa 24.3.1-arch1.3.0
OpenGL compatibility profile shading language version: 4.50
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_draw_buffers_blend, GL_AMD_multi_draw_indirect, 
    GL_AMD_pinned_memory, GL_AMD_query_buffer_object, 
    GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_stencil_export, 
    GL_AMD_shader_trinary_minmax, GL_AMD_texture_texture4, 
    GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_color_buffer_float, GL_ARB_compatibility, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, 
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, 
    GL_ARB_depth_texture, GL_ARB_derivative_control, 
    GL_ARB_direct_state_access, GL_ARB_draw_buffers, 
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, 
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments, 
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, 
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, 
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, 
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, 
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
    GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, 
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, 
    GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, 
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, 
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, 
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, 
    GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, 
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing, 
    GL_ARB_shadow, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, 
    GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, 
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, 
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, 
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, 
    GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, 
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, 
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object, 
    GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARB_window_pos, 
    GL_ARM_shader_framebuffer_fetch_depth_stencil, 
    GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_fragment_shader, GL_ATI_meminfo, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_ATI_texture_float, GL_ATI_texture_mirror_once, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_image_storage_compression, 
    GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, GL_EXT_direct_state_access, 
    GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, 
    GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, 
    GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, 
    GL_EXT_framebuffer_sRGB, GL_EXT_gpu_program_parameters, 
    GL_EXT_gpu_shader4, GL_EXT_memory_object, GL_EXT_memory_object_fd, 
    GL_EXT_multi_draw_arrays, GL_EXT_packed_depth_stencil, 
    GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_pixel_buffer_object, 
    GL_EXT_point_parameters, GL_EXT_polygon_offset_clamp, 
    GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, 
    GL_EXT_shader_image_load_formatted, GL_EXT_shader_integer_mix, 
    GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, 
    GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, 
    GL_EXT_texture_array, GL_EXT_texture_buffer_object, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_latc, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, 
    GL_EXT_texture_env_add, GL_EXT_texture_env_combine, 
    GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, 
    GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, 
    GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, 
    GL_EXT_vertex_attrib_64bit, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_INTEL_shader_atomic_float_minmax, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_signed_rgba, GL_MESA_window_pos, GL_MESA_ycbcr_texture, 
    GL_NVX_gpu_memory_info, GL_NV_ES1_1_compatibility, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_blend_square, 
    GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image, 
    GL_NV_depth_clamp, GL_NV_fog_distance, GL_NV_half_float, 
    GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_shader_atomic_float, 
    GL_NV_texgen_reflection, GL_NV_texture_barrier, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_OVR_multiview, GL_OVR_multiview2, GL_S3_s3tc, 
    GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp, 
    GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 0 MB, largest block: 0 MB
    VBO free aux. memory - total: 711 MB, largest block: 711 MB
    Texture free memory - total: 0 MB, largest block: 0 MB
    Texture free aux. memory - total: 711 MB, largest block: 711 MB
    Renderbuffer free memory - total: 0 MB, largest block: 0 MB
    Renderbuffer free aux. memory - total: 711 MB, largest block: 711 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 4293633205 MB
    Total available memory: 4293634185 MB
    Currently available dedicated video memory: 0 MB
OpenGL ES profile vendor: Mesa
OpenGL ES profile renderer: llvmpipe (LLVM 18.1.8, 128 bits)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.1-arch1.3.0
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    GL_ANDROID_extension_pack_es31a, GL_ANGLE_pack_reverse_row_order, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_sync, GL_APPLE_texture_max_level, 
    GL_ARM_shader_framebuffer_fetch_depth_stencil, GL_EXT_EGL_image_storage, 
    GL_EXT_EGL_image_storage_compression, GL_EXT_base_instance, 
    GL_EXT_blend_func_extended, GL_EXT_blend_minmax, GL_EXT_buffer_storage, 
    GL_EXT_clear_texture, GL_EXT_clip_control, GL_EXT_clip_cull_distance, 
    GL_EXT_color_buffer_float, GL_EXT_color_buffer_half_float, 
    GL_EXT_compressed_ETC1_RGB8_sub_texture, GL_EXT_copy_image, 
    GL_EXT_debug_label, GL_EXT_depth_clamp, GL_EXT_discard_framebuffer, 
    GL_EXT_disjoint_timer_query, GL_EXT_draw_buffers, 
    GL_EXT_draw_buffers_indexed, GL_EXT_draw_elements_base_vertex, 
    GL_EXT_draw_instanced, GL_EXT_float_blend, GL_EXT_frag_depth, 
    GL_EXT_geometry_point_size, GL_EXT_geometry_shader, GL_EXT_gpu_shader5, 
    GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_multi_draw_indirect, GL_EXT_occlusion_query_boolean, 
    GL_EXT_polygon_offset_clamp, GL_EXT_primitive_bounding_box, 
    GL_EXT_read_format_bgra, GL_EXT_render_snorm, GL_EXT_robustness, 
    GL_EXT_sRGB_write_control, GL_EXT_separate_shader_objects, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_group_vote, 
    GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_io_blocks, GL_EXT_shadow_samplers, 
    GL_EXT_tessellation_point_size, GL_EXT_tessellation_shader, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_buffer, 
    GL_EXT_texture_compression_bptc, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_compression_s3tc_srgb, GL_EXT_texture_cube_map_array, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, 
    GL_EXT_texture_format_BGRA8888, GL_EXT_texture_mirror_clamp_to_edge, 
    GL_EXT_texture_norm16, GL_EXT_texture_query_lod, GL_EXT_texture_rg, 
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_storage, GL_EXT_texture_storage_compression, 
    GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_texture_view, 
    GL_EXT_unpack_subimage, GL_KHR_blend_equation_advanced, 
    GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, 
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, 
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, 
    GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_bgra, 
    GL_MESA_framebuffer_flip_y, GL_MESA_sampler_objects, 
    GL_MESA_shader_integer_functions, GL_NV_alpha_to_coverage_dither_control, 
    GL_NV_conditional_render, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_generate_mipmap_sRGB, GL_NV_image_formats, GL_NV_pack_subimage, 
    GL_NV_pixel_buffer_object, GL_NV_read_buffer, GL_NV_read_depth, 
    GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_NV_shader_noperspective_interpolation, GL_NV_texture_barrier, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, 
    GL_OES_EGL_image_external_essl3, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24, 
    GL_OES_depth_texture, GL_OES_depth_texture_cube_map, 
    GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex, 
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
    GL_OES_geometry_point_size, GL_OES_geometry_shader, 
    GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box, 
    GL_OES_required_internalformat, GL_OES_rgb8_rgba8, GL_OES_sample_shading, 
    GL_OES_sample_variables, GL_OES_shader_image_atomic, 
    GL_OES_shader_io_blocks, GL_OES_shader_multisample_interpolation, 
    GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_tessellation_point_size, GL_OES_tessellation_shader, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_buffer, 
    GL_OES_texture_cube_map_array, GL_OES_texture_float, 
    GL_OES_texture_float_linear, GL_OES_texture_half_float, 
    GL_OES_texture_half_float_linear, GL_OES_texture_npot, 
    GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array, 
    GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float, 
    GL_OES_viewport_array, GL_OVR_multiview, GL_OVR_multiview2
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--      a  y  y  y     pb
0x02 32  0 10 10 10  2 16  0  0 0 0x00--      a  y  y  y     pb
0x03 32  0 10 10 10  2 24  0  0 0 0x00--      a  y  y  y     pb
0x04 32  0 10 10 10  2 24  8  0 0 0x00--      a  y  y  y     pb
0x05 32  0 10 10 10  2 32  0  0 0 0x00--      a  y  y  y     pb
0x06 32  0 10 10 10  2  0  0  4 1 0x00--      a  y  y  y     pb
0x07 32  0 10 10 10  2 16  0  4 1 0x00--      a  y  y  y     pb
0x08 32  0 10 10 10  2 24  0  4 1 0x00--      a  y  y  y     pb
0x09 32  0 10 10 10  2 24  8  4 1 0x00--      a  y  y  y     pb
0x0a 32  0 10 10 10  2 32  0  4 1 0x00--      a  y  y  y     pb
0x0b 30  0 10 10 10  0  0  0  0 0 0x00--      y  y  y  y     pb
0x0c 30  0 10 10 10  0 16  0  0 0 0x00--      y  y  y  y     pb
0x0d 30  0 10 10 10  0 24  0  0 0 0x00--      y  y  y  y     pb
0x0e 30  0 10 10 10  0 24  8  0 0 0x00--      y  y  y  y     pb
0x0f 30  0 10 10 10  0 32  0  0 0 0x00--      y  y  y  y     pb
0x10 30  0 10 10 10  0  0  0  4 1 0x00--      y  y  y  y     pb
0x11 30  0 10 10 10  0 16  0  4 1 0x00--      y  y  y  y     pb
0x12 30  0 10 10 10  0 24  0  4 1 0x00--      y  y  y  y     pb
0x13 30  0 10 10 10  0 24  8  4 1 0x00--      y  y  y  y     pb
0x14 30  0 10 10 10  0 32  0  4 1 0x00--      y  y  y  y     pb
0x15 32  0  8  8  8  8  0  0  0 0 0x00--      a  y  y  y     pb
0x16 32  0  8  8  8  8 16  0  0 0 0x00--      a  y  y  y     pb
0x17 32  0  8  8  8  8 24  0  0 0 0x00--      a  y  y  y     pb
0x18 32  0  8  8  8  8 24  8  0 0 0x00--      a  y  y  y     pb
0x19 32  0  8  8  8  8 32  0  0 0 0x00--      a  y  y  y     pb
0x1a 32  0  8  8  8  8  0  0  4 1 0x00--      a  y  y  y     pb
0x1b 32  0  8  8  8  8 16  0  4 1 0x00--      a  y  y  y     pb
0x1c 32  0  8  8  8  8 24  0  4 1 0x00--      a  y  y  y     pb
0x1d 32  0  8  8  8  8 24  8  4 1 0x00--      a  y  y  y     pb
0x1e 32  0  8  8  8  8 32  0  4 1 0x00--      a  y  y  y     pb
0x1f 24  0  8  8  8  0  0  0  0 0 0x00--      y  y  y  y     pb
0x20 24  0  8  8  8  0 16  0  0 0 0x00--      y  y  y  y     pb
0x21 24  0  8  8  8  0 24  0  0 0 0x00--      y  y  y  y     pb
0x22 24  0  8  8  8  0 24  8  0 0 0x00--      y  y  y  y     pb
0x23 24  0  8  8  8  0 32  0  0 0 0x00--      y  y  y  y     pb
0x24 24  0  8  8  8  0  0  0  4 1 0x00--      y  y  y  y     pb
0x25 24  0  8  8  8  0 16  0  4 1 0x00--      y  y  y  y     pb
0x26 24  0  8  8  8  0 24  0  4 1 0x00--      y  y  y  y     pb
0x27 24  0  8  8  8  0 24  8  4 1 0x00--      y  y  y  y     pb
0x28 24  0  8  8  8  0 32  0  4 1 0x00--      y  y  y  y     pb
0x29 16  0  5  6  5  0  0  0  0 0 0x00--      y  y  y  y     pb
0x2a 16  0  5  6  5  0 16  0  0 0 0x00--      y  y  y  y     pb
0x2b 16  0  5  6  5  0 24  0  0 0 0x00--      y  y  y  y     pb
0x2c 16  0  5  6  5  0 24  8  0 0 0x00--      y  y  y  y     pb
0x2d 16  0  5  6  5  0 32  0  0 0 0x00--      y  y  y  y     pb
0x2e 16  0  5  6  5  0  0  0  4 1 0x00--      y  y  y  y     pb
0x2f 16  0  5  6  5  0 16  0  4 1 0x00--      y  y  y  y     pb
0x30 16  0  5  6  5  0 24  0  4 1 0x00--      y  y  y  y     pb
0x31 16  0  5  6  5  0 24  8  4 1 0x00--      y  y  y  y     pb
0x32 16  0  5  6  5  0 32  0  4 1 0x00--      y  y  y  y     pb


Or as a file: XCGs.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants