Выпуск Mesa 18.2.0, свободной реализации OpenGL и Vulkan

Состоялся релиз свободной реализации API OpenGL и Vulkan — Mesa 18.2. С прошлого выпуска внесено около 2200 изменений от примерно 130 разработчиков. Первый выпуск ветки Mesa 18.2.0 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 18.2.1. В Mesa 18.2 предоставляется полная поддержка OpenGL 4.5 для драйверов i965, radeonsi и nvc0, поддержка Vulkan 1.1 для карт Intel и AMD, а также частичная поддержка стандарта OpenGL 4.6.

Наиболее заметные изменения:

  • В драйвере radeonsi (для карт AMD) предложен дополнительный профиль совместимости с OpenGL 4.4 (OpenGL 4.4 Compatibility);
  • В драйверы radeonsi и radv добавлена поддержка GPU AMD Vega 20;
  • В драйвер virgl (для виртуального GPU эмулятора QEMU) добавлена поддержка OpenGL 4.3;
  • Для драйверов radeonsi и virgl реализована поддержка OpenGL ES 3.2. В radeonsi дополнительно добавлена поддержка не входящего в основную спецификацию расширения GL_ARB_ES3_2_compatibility;
  • В radeonsi обеспечена поддержка алгоритма адаптивного сжатия текстур ASTC (Adaptive Scalable Texture Compression);
  • В драйвер i965 (для карт Intel) добавлена поддержка расширения GL_ARB_fragment_shader_interlock и улучшена поддержка шейдеров SPIR-V;
  • В драйвер nvc0 для карт NVIDIA c GPU GM200+ добавлена поддержка расширений GL_ARB_sample_locations, GL_NV_sample_locations, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate. Для чипов GP102+ добавлена поддержка расширения GL_NV_conservative_raster_pre_snap_triangles;
  • В nvc0 для GM100+ (Maxwell+) добавлена поддержка групповой обработки изображения (multisampled);
  • В драйвер radeonsi добавлена поддержка расшириений GL_ANDROID_extension_pack_es31a и GL_KHR_texture_compression_astc_ldr;
  • Во всех OpenGL-драйверах добавлена поддержка расширений
    GL_OES_EGL_image_external и GL_OES_EGL_image_external_essl3;

  • В систему кэширования шейдеров на диске добавлена поддержка вычислительных шейдеров для драйвера radeonsi;
  • Драйвер vc5 (для GPU Broadcom Video Core V) переименован в v3d и включён в основной состав Mesa;
  • В Vulkan-драйвер ANV (для карт Intel) добавлены расширения, развиваемые для следующей версии API Vulkan и уже используемые в SteamVR:
    • VK_KHR_bind_memory2.
    • VK_KHR_external_fence.
    • VK_KHR_external_fence_capabilities.
    • VK_KHR_external_semaphore.
    • VK_KHR_external_semaphore_capabilities.
    • VK_KHR_maintenance2.
    • VK_KHR_maintenance3.
    • VK_KHR_multiview.
    • VK_KHR_relaxed_block_layout.
    • VK_KHR_sampler_ycbcr_conversion.
    • VK_KHR_8bit_storage.
    • VK_KHR_create_renderpass2.
    • VK_KHR_display.
    • VK_KHR_display_swapchain.
    • VK_KHR_external_fence_fd.
    • VK_KHR_external_semaphore_fd.
    • VK_KHR_get_display_properties2.
    • VK_KHR_image_format_list.
  • В Vulkan-драйвер RADV (для карт AMD) добавлен набор расширений:
    • VK_KHR_bind_memory2.
    • VK_KHR_external_fence.
    • VK_KHR_external_fence_capabilities.
    • VK_KHR_maintenance2.
    • VK_KHR_maintenance3.
    • VK_KHR_multiview.
    • VK_KHR_relaxed_block_layout.
    • VK_KHR_create_renderpass2.
    • VK_KHR_display.
    • VK_KHR_display_swapchain.
    • VK_KHR_draw_indirect_count.
    • VK_KHR_external_fence_fd.
    • VK_KHR_get_display_properties2.
    • VK_KHR_get_surface_capabilities2.
    • VK_KHR_image_format_list.
  • В драйвере freedreno (для графической подсистемы чипов Qualcomm) для GPU Adreno a5xx добавлена поддержка метода сглаживания MSAA (Multisample anti-aliasing) и связанного с ним расширения GL_ARB_texture_multisample. Кроме того в драйвере улучшены средства обработки текстур и добавлена поддержка расширений GL_OES_texture_buffer и GL_ARB_seamless_cubemap_per_texture;
  • В драйверы r600 и radeonsi добавлена поддержка расширения GL_EXT_texture_norm16;
  • В драйвере i965 обеспечена поддержка OpenGL-расширений GL_OES_texture_view on (для gen8+) и GL_EXT_texture_norm16;
  • В драйвер nouveau добавлена поддержка расширений GL_ARB_post_depth_coverage, GL_ARB_sample_locations и GL_EXT_texture_norm16;
  • В драйвер virgl добавлена поддержка расширений GL_ARB_seamless_cubemap_per_texture и GL_ARB_shader_stencil_export;
  • Удалена реализация расширения GL_EXT_polygon_offset, вместо которого следует использовать вызов glPolygonOffset;
  • Увеличена скорость компиляции шейдеров с использованием LLVM;
  • Из Mesa удалена библиотека libwayland-egl, которая теперь поставляется в составе Wayland.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.