Mesa 21.2 рдХреЛ рд░рд┐рд▓реАрдЬ, OpenGL рд░ Vulkan рдХреЛ рдирд┐: рд╢реБрд▓реНрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди

рд╡рд┐рдХрд╛рд╕рдХреЛ рддреАрди рдорд╣рд┐рдирд╛ рдкрдЫрд┐, OpenGL рд░ Vulkan API - Mesa 21.2.0 - рдХреЛ рдирд┐: рд╢реБрд▓реНрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд░рд┐рд▓реАрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рднрдпреЛред Mesa 21.2.0 рд╢рд╛рдЦрд╛ рдХреЛ рдкрд╣рд┐рд▓реЛ рд░рд┐рд▓реАрдЬ рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╕реНрдерд┐рддрд┐ рдЫ - рдХреЛрдб рдХреЛ рдЕрдиреНрддрд┐рдо рд╕реНрдерд┐рд░реАрдХрд░рдг рдкрдЫрд┐, рдПрдХ рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг 21.2.1 рдЬрд╛рд░реА рдЧрд░рд┐рдиреЗрдЫред

Mesa 21.2 рд▓реЗ 4.6, iris (Intel), radeonsi (AMD), zink рд░ llvmpipe рдбреНрд░рд╛рдЗрднрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ OpenGL 965 рдХреЛ рд▓рд╛рдЧрд┐ рдкреВрд░реНрдг рд╕рдорд░реНрдерди рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫред OpenGL 4.5 рд╕рдорд░реНрдерди AMD (r600) рд░ NVIDIA (nvc0) GPU рдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫ, рд░ virgl (QEMU/KVM рдХреЛ рд▓рд╛рдЧрд┐ Virgil4.3D рднрд░реНрдЪреБрдЕрд▓ GPU) рдХреЛ рд▓рд╛рдЧрд┐ OpenGL 3 рд╕рдорд░реНрдерди рдЙрдкрд▓рдмреНрдз рдЫред Vulkan 1.2 рд╕рдорд░реНрдерди Intel рд░ AMD рдХрд╛рд░реНрдбрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫ, рд╕рд╛рдереИ рдЗрдореНрдпреБрд▓реЗрдЯрд░ рдореЛрдб (vn) рдорд╛, Vulkan 1.1 рд╕рдорд░реНрдерди Qualcomm GPUs рд░ рд▓рд╛рднрд╛рдкрд╛рдЗрдк рд╕рдлреНрдЯрд╡реЗрдпрд░ рд░рд╛рд╕реНрдЯрд░рд╛рдЗрдЬрд░рдХрд╛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫ, рд░ Vulkan 1.0 Broadcom VideoCore VI GPUs (рд░рд╛рд╕реНрдкрдмреЗрд░реА Pi 4) рдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫред ред

рдореБрдЦреНрдп рдЖрд╡рд┐рд╖реНрдХрд╛рд░рд╣рд░реВ:

  • Asahi OpenGL рдбреНрд░рд╛рдЗрднрд░рд▓рд╛рдИ Apple M1 рдЪрд┐рдкреНрд╕рдорд╛ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ GPU рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рд╕рдорд░реНрдерди рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ рдЫред рдбреНрд░рд╛рдЗрднрд░рд▓реЗ рдЧреНрдпрд╛рд▓рд┐рдпрдо рдЗрдиреНрдЯрд░рдлреЗрд╕ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ рд░ OpenGL 2.1 рд░ OpenGL ES 2.0 рдХрд╛ рдзреЗрд░реИрдЬрд╕реЛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ, рддрд░ рдзреЗрд░реИрдЬрд╕реЛ рдЦреЗрд▓рд╣рд░реВ рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рдЕрдЭреИ рдЙрдкрдпреБрдХреНрдд рдЫреИрдиред рдбреНрд░рд╛рдЗрднрд░ рдХреЛрдб рдЧреНрдпрд╛рд▓рд┐рдпрдо рд╕рдиреНрджрд░реНрдн рдиреВрдк рдбреНрд░рд╛рдЗрднрд░рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫ, рдХреЗрд╣реА рдХреЛрдб рдкреНрдпрд╛рдирдлреНрд░реЛрд╕реНрдЯ рдбреНрд░рд╛рдЗрднрд░рдмрд╛рдЯ рдПрдЖрд░рдПрдо рдорд╛рд▓реА GPU рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫред
  • Crocus OpenGL рдбреНрд░рд╛рдЗрднрд░ рдкреБрд░рд╛рдиреЛ Intel GPUs (Gen4-Gen7 рдорд╛рдЗрдХреНрд░реЛрдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд) рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд╕рд╣рд┐рдд рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬреБрди Iris рдбреНрд░рд╛рдЗрднрд░рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдЫреИрдиред i965 рдбреНрд░рд╛рдЗрднрд░рдХреЛ рд╡рд┐рдкрд░реАрдд, рдирдпрд╛рдБ рдбреНрд░рд╛рдЗрднрд░ Gallium3D рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЫ, рдЬрд╕рд▓реЗ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓рдорд╛ DRI рдбреНрд░рд╛рдЗрднрд░рд▓рд╛рдИ рдореЗрдореЛрд░реА рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХрд╛рд░реНрдпрд╣рд░реВ рдЖрдЙрдЯрд╕реЛрд░реНрд╕ рдЧрд░реНрджрдЫ рд░ рдЖрдЙрдЯрдкреБрдЯ рд╡рд╕реНрддреБрд╣рд░реВрдХреЛ рдкреБрди: рдкреНрд░рдпреЛрдЧ рдХреНрдпрд╛рд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд╕рд╣рд┐рдд рд░реЗрдбрд┐рдореЗрдб рд╕реНрдЯреЗрдЯ рдЯреНрд░реНрдпрд╛рдХрд░ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред
  • PanVk рдбреНрд░рд╛рдЗрднрд░ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ рдЫ, ARM рдорд╛рд▓реА рдорд┐рдбрдЧрд╛рд░реНрдб рд░ Bifrost GPU рдХреЛ рд▓рд╛рдЧрд┐ Vulkan рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ API рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрджреИред PanVk рдХреЛрд▓рд╛рдмреЛрд░рд╛ рдХрд░реНрдордЪрд╛рд░реАрд╣рд░реВрджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдЧрд░рд┐рдПрдХреЛ рд╣реЛ рд░ OpenGL рд▓рд╛рдИ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрдиреЗ Panfrost рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд╡рд┐рдХрд╛рд╕рдХреЛ рдирд┐рд░рдиреНрддрд░рддрд╛рдХреЛ рд░реВрдкрдорд╛ рд░рд╛рдЦрд┐рдПрдХреЛ рдЫред
  • Midgard GPUs (рдорд╛рд▓реА T760 рд░ рдирдпрд╛рдБ) рд░ Bifrost GPUs (рдорд╛рд▓реА G31, G52, G76) рдХреЛ рд▓рд╛рдЧрд┐ Panfrost рдбреНрд░рд╛рдЗрднрд░рд▓реЗ OpenGL ES 3.1 рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред рднрд╡рд┐рд╖реНрдпрдХрд╛ рдпреЛрдЬрдирд╛рд╣рд░реВрдорд╛ Bifrost рдЪрд┐рдкреНрд╕рдорд╛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдмрдврд╛рдЙрдиреЗ рдХрд╛рдо рд░ Valhall рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ (рдорд╛рд▓реА G77 рд░ рдирдпрд╛рдБ) рдорд╛ рдЖрдзрд╛рд░рд┐рдд GPU рд╕рдорд░реНрдердирдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдорд╛рд╡реЗрд╢ рдЫред
  • 32-рдмрд┐рдЯ x86 рдирд┐рд░реНрдорд╛рдгрд▓реЗ рдЧрдгрд┐рдд рдЧрдгрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ x87 рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВрдХреЛ рд╕рдЯреНрдЯрд╛ sse2 рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫред
  • NVIDIA GT50x GPU (GeForce GT 21├Ч2) рдХреЛ рд▓рд╛рдЧрд┐ Nouveau nv0 рдбреНрд░рд╛рдЗрднрд░рд▓реЗ OpenGL ES 3.1 рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред
  • Vulkan рдбреНрд░рд╛рдЗрднрд░ TURNIP рд░ OpenGL рдбреНрд░рд╛рдЗрднрд░ Freedreno, Qualcomm Adreno GPU рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рдХрд╕рд┐рдд, Adreno a6xx gen4 GPU (a660, a635) рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рд╕рдорд░реНрдерди рдЫред
  • RADV (AMD) Vulkan рдбреНрд░рд╛рдЗрднрд░рд▓реЗ NGG (Next-Gen Geometry) рд╢реЗрдбрд░ рдЗрдиреНрдЬрд┐рдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкреНрд░рд┐рдорд┐рдЯрд┐рдн рдХрд▓рд┐рдЩрдХрд╛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкреЗрдХреЛ рдЫред MSVC рдХрдореНрдкрд╛рдЗрд▓рд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ Windows рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ RADV рдбреНрд░рд╛рдЗрднрд░ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫред
  • рдЖрдЧрд╛рдореА Intel Xe-HPG (DG2) рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХрд╛рд░реНрдбрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрди ANV Vulkan рдбреНрд░рд╛рдЗрднрд░ (Intel) рд░ Iris OpenGL рдбреНрд░рд╛рдЗрднрд░рдорд╛ рддрдпрд╛рд░реА рдХрд╛рд░реНрдп рд╕рдореНрдкрдиреНрди рдЧрд░рд┐рдПрдХреЛ рдЫред рдпрд╕рдорд╛ рд░реЗ рдЯреНрд░реЗрд╕рд┐рдЩрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд░ рд░реЗ рдЯреНрд░реЗрд╕рд┐рдЩ рд╢реЗрдбрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд╕рдорд╛рд╡реЗрд╢ рдЫред
  • рд▓рд╛рднрд╛рдкрд╛рдЗрдк рдбреНрд░рд╛рдЗрднрд░, рдЬрд╕рд▓реЗ Vulkan API (llvmpipe рд╕рдБрдЧ рдорд┐рд▓реНрджреЛрдЬреБрд▓реНрджреЛ, рддрд░ Vulkan рдХреЛ рд▓рд╛рдЧрд┐, Vulkan API рдХрд▓рд╣рд░реВрд▓рд╛рдИ Gallium API рдорд╛ рдЕрдиреБрд╡рд╛рдж рдЧрд░реНрджреИ) рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдлреНрдЯрд╡реЗрдпрд░ рд░рд╛рд╕реНрдЯрд░рд╛рдЗрдЬрд░ рд▓рд╛рдЧреВ рдЧрд░реНрджрдЫ, "wideLines" рдореЛрдбрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ (1.0 рднрдиреНрджрд╛ рдмрдвреА рдЪреМрдбрд╛рдЗ рднрдПрдХреЛ рд▓рд╛рдЗрдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ)ред
  • рд╡реИрдХрд▓реНрдкрд┐рдХ GBM (рдЬреЗрдиреЗрд░рд┐рдХ рдмрдлрд░ рдкреНрд░рдмрдиреНрдзрдХ) рдмреНрдпрд╛рдХрдПрдиреНрдбрд╣рд░реВрдХреЛ рдЧрддрд┐рд╢реАрд▓ рдЦреЛрдЬ рд░ рд▓реЛрдбрд┐рдЩрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫред рдкрд░рд┐рд╡рд░реНрддрди NVIDIA рдбреНрд░рд╛рдЗрднрд░рд╣рд░реВрд╕рдБрдЧ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ Wayland рд╕рдорд░реНрдерди рд╕реБрдзрд╛рд░ рдЧрд░реНрдиреЗ рдЙрджреНрджреЗрд╢реНрдп рд╣реЛред
  • Zink рдбреНрд░рд╛рдЗрднрд░ (Vulkan рдХреЛ рд╢реАрд░реНрд╖рдорд╛ OpenGL API рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рдЬрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ Vulkan API рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрди рд╕реАрдорд┐рдд рдбреНрд░рд╛рдЗрднрд░рд╣рд░реВ рднрдПрдорд╛ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдПрдХреНрд╕реЗрд▓реЗрд░реЗрдЯреЗрдб OpenGL рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ) рд▓реЗ OpenGL рдПрдХреНрд╕реНрдЯреЗрдиреНрд╕рдирд╣рд░реВ GL_ARB_sample_locations, GL_ARB_sparse_buffer, GL_ARB_sparse_buffer, GL_ARB_Text, GL_ARB_Text, GL_ARB_sparse_buffer рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред _ARB_shader_clockред DRM рдврд╛рдБрдЪрд╛ рдкрд░рд┐рдорд╛рд░реНрдЬрдирд╣рд░реВ рдердкрд┐рдпреЛ (рдкреНрд░рддреНрдпрдХреНрд╖ рд░реЗрдиреНрдбрд░рд┐рдЩ рдкреНрд░рдмрдиреНрдзрдХ, VK_EXT_image_drm_format_modifier рд╡рд┐рд╕реНрддрд╛рд░ рд╕рдХреНрд╖рдо)ред
  • рд╡рд┐рд╕реНрддрд╛рд░рдХрд╛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди Vulkan рдбреНрд░рд╛рдЗрднрд░рд╣рд░реВ RADV (AMD), ANV (Intel) рд░ lavpipe рдорд╛ рдердкрд┐рдПрдХреЛ рдЫ:
    • VK_EXT_provoking_vertex (RADV);
    • VK_EXT_extended_dynamic_state2 (RADV);
    • VK_EXT_global_priority_query (RADV);
    • VK_EXT_physical_device_drm (RADV);
    • VK_KHR_shader_subgroup_uniform_control_flow (RADV, ANV);
    • VK_EXT_color_write_enable (RADV);
    • VK_EXT_acquire_drm_display (RADV, ANV);
    • VK_EXT_vertex_input_dynamic_state(lavapipe);
    • VK_EXT_line_rasterization(lavapipe);
    • VK_EXT_multi_draw(ANV, рд▓рд╛рднрдкрд╛рдЗрдк, RADV);
    • VK_KHR_separate_depth_stencil_layouts(lavapipe);
    • VK_EXT_separate_stencil_usage(lavapipe);
    • VK_EXT_extended_dynamic_state2 (lavapipe)ред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди