Релиз Mesa 17.1.0
После трёх месяцев разработки опубликован релиз свободной реализации OpenGL API — Mesa 17.1. По сравнению с прошлым выпуском внесено около 3000 изменений от примерно 140 разработчиков. Первый выпуск ветки Mesa 17.1.0 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 17.1.1.
Наиболее заметные изменения:
- В драйвере i965 для чипов Intel Ivy Bridge обеспечена поддержка OpenGL 4.2, что позволило добиться паритета функциональности с OpenGL-драйверами для Windows, macOS и Android;
- Реализована поддержка кэширования шейдеров на диске, что позволяет ускорить запуск и сократить время компиляции шейдеров в некоторых играх;
- Существенно увеличена производительность игр компании Feral Interactive, которая также предоставила разработчикам Mesa ключи для бесплатного доступ ко всем своим Linux-играм в Steam;
- В разработанном компанией Intel высокопроизводительном программном растеризаторе SWR, предоставляющем средства для программной отрисовки OpenGL силами центрального процессора, без привлечения GPU, включена поддержка геометрических шейдеров и технологии сглаживания MSAA (Multi-Sample AntiAliasing). Для работы SWR теперь требуется как минимум LLVM 3.9.0 и компилятор, поддерживающий стандарт C++14;
- Для EGL реализован интерфейс libglvnd. Для Android добавлена поддержка расширения EGL_EXT_buffer_age;
- Добавлена экспериментальная поддержка многопоточной диспетчеризации OpenGL;
- Реализовано расширение EXT_compressed_ETC1_RGB8_sub_texture;
- Через файл конфигурации DRIRC добавлены настройки для обхода ошибок в играх Worms WMD, Crookz — The Big Heist, Tropico 5 и The Culling;
- В драйвер nouveau добавлена поддержка карт Pascal второго поколения и внесена порция оптимизаций;
- В radeonsi расширена поддержка карт Polaris10/12, включено декодирование 10bit HEVC. Для работы драйвера radeonsi теперь требуется LLVM 3.8.0;
- Vulkan-драйвер RADV, развиваемый для карт AMD, успешно прошёл все тесты Khronos CTS, но пока официально не ратифицирован. Добавлена поддержка GPU POLARIS10 и POLARIS12, возможность использования геометрических и тесселяционных шейдров, средства работы с несколькими физическими устройствами;
- В Vulkan-драйвере ANV, развиваемом для карт Intel, обеспечена возможности сборки для платформы Android и обособленной сборки без привязки к драйверу i965;
- В драйверах RADV и ANV добавлена поддержка расширений Vulkan:
- VK_KHR_get_physical_device_properties2
- VK_KHR_descriptor_update_template
- VK_KHR_incremental_present
- VK_KHR_maintenance1
- VK_KHR_push_descriptor
- VK_KHR_shader_draw_parameters
- PipelineStatisticsQuery
- ShaderStorageImageWriteWithoutFormat
- ShaderFloat64
- InheritedQueries
- Добавлена поддержка новых расширений OpenGL:
- GL_ARB_gpu_shader_fp64 в i965/ivybridge
- GL_ARB_gpu_shader_int64 в i965/gen8+, nvc0, radeonsi, softpipe, llvmpipe
- GL_ARB_shader_ballot вnvc0, radeonsi
- GL_ARB_shader_clock в nv50, nvc0, radeonsi
- GL_ARB_shader_group_vote в radeonsi
- GL_ARB_shader_precision в i965/ivb
- GL_ARB_shader_viewport_layer_array в radeonsi
- GL_ARB_sparse_buffer в radeonsi/CIK+
- GL_ARB_transform_feedback2 в i965/gen6
- GL_ARB_transform_feedback_overflow_query в i965/gen6+
- GL_ARB_vertex_attrib_64bit в i965/ivb
- GL_NV_fill_rectangle в nvc0
- Из поставки удалён gallium-драйвер ilo;
- Сборочная опция »--enable-gallium-llvm» заменена на »--enable-llvm». Опция »--with-egl-platforms» объявлена устаревшей, вместо неё следует использовать »--with-platforms»;
- Прекращена поддержка переменных окружения «MESA_GLSL=opt» и «MESA_GLSL=no_opt»;
- Прекращена поддержка Android 4.4 (KitKat).
© OpenNet