Релиз Mesa 13.0.0 с поддержкой OpenGL 4.5

После трёх месяцев разработки состоялся релиз свободной реализации OpenGL API — Mesa 13.0, примечательный реализацией OpenGL 4.5 в драйверах RadeonSI, Nouveau (nvc0) и Intel (i965). Первый выпуск ветки Mesa 13.0.0 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 13.0.2.

Поддержка новых версий OpenGL доступна для видеокарт AMD на основе архитектуры GCN (HD 7700–7900, HD 8000, Rx 240–290, Rx 300), NVIDIA на базе GPU Fermi, Kepler и Maxwell (GeForce 400/500/600/700) и Intel семейства Gen8+ (Broadwell и новее). Кроме того, в драйвере Intel для GPU семейства gen9+ (Skylake) обеспечена поддержка OpenGL ES 3.2. Для драйверов RadeonSI и Nouveau пока не завершено тестирование в Khronos, поэтому несмотря на реализацию всех расширений OpenGL 4.5 в данных драйверах в качестве максимальной поддерживаемой версии указывается OpenGL 4.3.

Кроме поддержки OpenGL 4.5 и OpenGL ES 3.2 в новом выпуске можно отметить следующие изменения:

  • Реализация драйвера графического API Vulkan для графических чипов AMD, поддерживаемых драйвером AMDGPU. В прошлом выпуске был представлен вариант драйвера Vulkan для оборудования Intel;
  • Поддержка Windows-DRI в GLX;
  • Поддержка кодирования H264 через VAAPI;
  • Поддержка декодирования H265 через OMX;
  • Удаление libudev из числа зависимостей. Вместо libudev теперь используются возможности libdrm;
  • Внесение в EGL улучшений и исправлений, связанных с работой бэкендов Wayland, Android и X11/DRI3;
  • Реализация расширений EGL: EGL_MESA_platform_surfaceless, EGL_KHR_debu и KHR_no_config_context;
  • Поддержка новых расширений OpenGL:
    • GL_ARB_ES3_1_compatibility в i965
    • GL_ARB_ES3_2_compatibility в i965/gen8+
    • GL_ARB_clear_texture в r600, radeonsi
    • GL_ARB_compute_variable_group_size в nvc0, radeonsi
    • GL_ARB_cull_distance в radeonsi
    • GL_ARB_enhanced_layouts в i965, nv50, nvc0, radeonsi, llvmpipe, softpipe
    • GL_ARB_indirect_parameters в radeonsi
    • GL_ARB_query_buffer_object в radeonsi
    • GL_ARB_shader_draw_parameters в radeonsi
    • GL_ARB_shader_group_vote в nvc0
    • GL_ARB_shader_viewport_layer_array в i965/gen6+
    • GL_ARB_stencil_texturing в i965/hsw
    • GL_ARB_texture_stencil8 в i965/hsw
    • GL_EXT_window_rectangles в nv50, nvc0
    • GL_KHR_blend_equation_advanced в i965
    • GL_KHR_robustness в nvc0, radeonsi
    • GL_KHR_texture_compression_astc_sliced_3d в i965
    • GL_OES_copy_image в nv50, nvc0, r600, radeonsi, softpipe, llvmpipe
    • GL_OES_geometry_shader в i965/gen8+, nvc0, radeonsi
    • GL_OES_primitive_bounding_box в i965/gen7+, nvc0, radeonsi
    • GL_OES_texture_cube_map_array в i965/gen8+, nvc0, radeonsi
    • GL_OES_tessellation_shader вn i965/gen7+, nvc0, radeonsi
    • GL_OES_viewport_array в nvc0, radeonsi
    • GL_ANDROID_extension_pack_es31a в i965/gen9+

© OpenNet