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

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

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

  • В драйверы i965 и ANV (OpenGL и Vulkan-драйверы для GPU Intel) добавлена поддержка GPU Whiskey Lake и Amber Lake;
  • В драйверах radeonsi и RADV (OpenGL и Vulkan-драйверы для карт AMD) добавлена поддержка GPU Raven 2, Picasso и Vega 20;
  • В драйвере radeonsi предложен дополнительный профиль совместимости с OpenGL 4.5 (OpenGL 4.5 Compatibility) и реализована возможность задействования VCN-движка (Video Core Next) чипов Raven Ridge для декодирования JPEG;
  • В драйвере RADV добавлена поддержка консервативной растеризации и обеспечена возможность компиляции встроенных шейдеров по запросу для окружений без поддержки кэшировния шейдеров;
  • В драйвере виртуального видеоадаптера системы виртуализации VMware реализован профиль совместимости с OpenGL 3.3 (OpenGL 3.3 Compatibility);
  • Добавлены расширения EGL, которые позволяют использовать EGL через прямое взаимодействие с DRM-драйвером, без поддержки EGL на стороне оконной системы:
    • EGL_EXT_device_base для всех драйверов.
    • EGL_EXT_device_drm для всех драйверов.
    • EGL_MESA_device_software для всех драйверов.
  • Добавлены новые расширения OpenGL:
    • GL_AMD_depth_clamp_separate для драйверов r600 и radeonsi.
    • GL_AMD_framebuffer_multisample_advanced для radeonsi.
    • GL_AMD_gpu_shader_int64 для i965, nvc0, radeonsi.
    • GL_AMD_multi_draw_indirect для всех драйверов с поддержкой OpenGL 4.x.
    • GL_AMD_query_buffer_object для i965, nvc0, r600, radeonsi.
    • GL_EXT_disjoint_timer_query для radeonsi большинства других Gallium-драйверов.
    • GL_EXT_texture_compression_s3tc для всех драйверов;
    • GL_EXT_vertex_attrib_64bit для i965, nvc0, radeonsi.
    • GL_EXT_window_rectangles для radeonsi.
    • GL_KHR_texture_compression_astc_sliced_3d для radeonsi.
    • GL_NV_fragment_shader_interlock для i965.
  • В Vulkan-драйвер ANV (для карт Intel) добавлены расширения:
    • VK_EXT_calibrated_timestamps
    • VK_EXT_pci_bus_info
    • VK_EXT_sampler_filter_minmax
    • VK_EXT_vertex_attribute_divisor v3
    • VK_GOOGLE_decorate_string
    • VK_GOOGLE_hlsl_functionality1
    • VK_KHR_driver_properties
  • В Vulkan-драйвер RADV (для карт AMD) добавлен набор расширений:
    • VK_EXT_calibrated_timestamps
    • VK_EXT_conservative_rasterization
    • VK_EXT_pci_bus_info
    • VK_EXT_transform_feedback
    • VK_EXT_vertex_attribute_divisor v3
    • VK_GOOGLE_decorate_string
    • VK_GOOGLE_hlsl_functionality1
    • VK_KHR_driver_properties
  • Сборочные скрипты адаптированы для использования Python 3.

© OpenNet