Выпуск Mesa 10.3 с поддержкой новых расширений OpenGL 4

После трёх месяцев разработки представлен релиз свободной реализации OpenGL API — Mesa 10.3, примечательный обеспечением поддержки большой порции новых расширений OpenGL, приблизивших Mesa к реализации OpenGL 4. Поддержка OpenGL 3.3 для драйверов i965, Nouveau, RadeonSI и r600 уже реализована полностью. Первый выпуск ветки Mesa 10.3 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 10.3.1. Переход на нумерацию 11.0 будет проведён после реализации поддержки OpenGL 4.0 в одном из драйверов.

Основные изменения в Mesa 10.3:

  • Новый драйвер для программной растеризации — kms_swrast_dri.so, который может использовать с DRM-драйверами без полноценного GEM, таких как qxl и simpledrm;
  • Поддержка сжатия текстур BPTC (GL_ARB_texture_compression_bptc) для драйверов i965/gen7+, nvc0, r600/evergreen+ и radeonsi. Поддержка данного алгоритма сжатия текстур является одним из требований спецификаций OpenGL 4.2;
  • Поддержка новых расширений OpenGL, определённых в стандартах OpenGL 4.x:
    • GL_ARB_ES3_compatibility для драйверов nv50, nvc0, r600, radeonsi, softpipe, llvmpipe
    • GL_ARB_clear_texture для драйвера i965
    • GL_ARB_compressed_texture_pixel_storage для всех драйверов
    • GL_ARB_conditional_render_inverted для драйверов i965, nvc0, softpipe, llvmpipe
    • GL_ARB_derivative_control для драйверов i965, nv50, nvc0, r600
    • GL_ARB_draw_indirect для драйверов nvc0, radeonsi
    • GL_ARB_explicit_uniform_location для всех драйверов с поддержкой GLSL
    • GL_ARB_fragment_layer_viewport для драйверов nv50, nvc0, llvmpipe, r600
    • GL_ARB_gpu_shader5 для драйверов i965/gen7, nvc0
    • GL_ARB_multi_draw_indirect для драйверов nvc0, radeonsi
    • GL_ARB_sample_shading для драйвера radeonsi
    • GL_ARB_seamless_cubemap_per_texture для драйверов i965, llvmpipe, nvc0, r600, radeonsi, softpipe
    • GL_ARB_stencil_texturing для драйверов nv50, nvc0, r600, radeonsi
    • GL_ARB_texture_barrier для драйверов nv50, nvc0, r300, r600, radeonsi
    • GL_ARB_texture_cube_map_array для драйвера radeonsi
    • GL_ARB_texture_gather для драйверов r600, radeonsi
    • GL_ARB_texture_query_levels для драйверов nv50, nvc0, llvmpipe, r600, radeonsi, softpipe
    • GL_ARB_texture_query_lod для драйверовn r600, radeonsi
    • GL_ARB_viewport_array для драйвера nvc0
    • GL_AMD_vertex_shader_viewport_index для драйверов i965/gen7+, r600
    • GL_OES_compressed_ETC1_RGB8_texture для драйверов nv30, nv50, nvc0, r300, r600, radeonsi, softpipe, llvmpipe
    • GLX_MESA_query_renderer для драйверов nv30, nv50, nvc0, r300, r600, radeonsi, softpipe, llvmpipe
  • Добавлен новый драйвер vc4 для применяемого в чипах Broadcom видеоускорителя VideoCore IV, который используется в таких устройствах, как Raspberry Pi, Samsung Galaxy S II Plus, Galaxy Grand и Galaxy Mega;
  • В драйвере RadeonSI реализована поддержка ускорения кодирования видео H.264 с привлечением VCE-движков GPU AMD. Проведена большая работа по стабилизации поддержки GPU AMD Hawaii;
  • В драйвере nvc0 (Nouveau) добавлена поддержка плат Maxwell (NVIDIA GeForce 750) и GPU GK20A, основанного на семействе Kepler и используемого в чипах Tegra K1;
  • В glx/dri3 добавлена поддержка перенаправления рендеринга GPU на другое устройство вывода (GPU offloading), что позволит задействовать DRI3 на гибридных системах с несколькими видеокартами (ранее поддерживался только DRI2 GPU offloading);
  • В драйвере softpipe включена поддержка GLSL 3.30;
  • Включение в поставку заголовочного файла GL/glcorearb.h, предоставленного группой Khronos;
  • Продолжено развитие новой концепции компоновки DRI-драйверов («megadriver»), обеспечивающей возможность оформления всех Gallium3D-драйверов в форме одной разделяемой библиотеки (.so);
  • Множество улучшений, нацеленных на увеличение производительности. Ряд оптимизаций, в результате которых удалось поднять производительность некоторых игр, реализован при помощи компанией Valve;
  • Удалена поддержка расширения GL_ATI_envmap_bumpmap;
  • Из сборочного сценария удалена опция «—enable-32/64-bit» (режим теперь выбирается на уровне сборочного окружения).

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

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

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