Lansarea Mesa 24.0, o implementare gratuită a OpenGL și Vulkan

Lansarea implementării gratuite a API-urilor OpenGL și Vulkan - Mesa 24.0.0 - a fost publicată. Prima lansare a ramului Mesa 24.0.0 are un statut experimental - după stabilizarea finală a codului, va fi lansată o versiune stabilă 24.0.1.

Mesa 24.0 oferă suport pentru API-ul grafic Vulkan 1.3 în anv pentru GPU-urile Intel, radv pentru GPU-urile AMD, NVK pentru GPU-urile NVIDIA, tu pentru GPU-urile Qualcomm, în rasterizarea software-ului lavapipe (lvp) și în modul emulator (vn). Suportul Vulkan 1.0 este implementat în driverele v3dv (GPU Broadcom VideoCore VI de la Raspberry Pi 4) și dzn (implementarea Vulkan pe partea de sus a Direct3D 12).

Mesa oferă, de asemenea, suport complet OpenGL 4.6 pentru iris (GPU-uri Intel Gen 8+), radeonsi (AMD), Crocus (GPU-uri Intel Gen4-Gen7 mai vechi), zink, llvmpipe, virgl (GPU virtual Virgil3D pentru QEMU/KVM), drivere freedreno ( Qualcomm Adreno) și d3d12 (un strat pentru organizarea lucrărilor OpenGL pe DirectX 12). Suportul OpenGL 4.5 este disponibil pentru GPU-urile AMD (r600) și NVIDIA (nvc0). Suportul OpenGL 3.3 este prezent în driverele softpipe (rasterizare software), asahi (GPU AGX utilizat în cipurile Apple M1 și M2) și nv50 (NVIDIA NV50).

Principalele inovații:

  • S-a adăugat un nou driver Vulkan pvr pentru GPU Imagination PowerVR.
  • Driverul NVK (NVIDIA) acceptă Vulkan 1.3.
  • Driverul crocus (GPU Intel Gen4-Gen7) acceptă OpenGL 4.6.
  • Driverul d3d12, care oferă un strat de implementare OpenGL peste DirectX 12, oferă suport pentru OpenGL 4.6.
  • Driverul Asahi pentru GPU-ul Apple AGX include suport pentru geometry shaders și este compatibil cu OpenGL 3.3.
  • S-a adăugat posibilitatea de a utiliza extensiile Vulkan pentru accelerarea hardware a codificării video în formatele h.264 și h.265.
  • Driverul RADV Vulkan pentru GPU-urile AMD a îmbunătățit performanța de urmărire a razelor.
  • S-a adăugat suport pentru extensii la driverul NVK Vulkan pentru GPU-urile NVIDIA:
    • VK_KHR_vulkan_memory_model
    • VK_EXT_multi_draw
    • VK_KHR_shader_float_controls
    • VK_EXT_texel_buffer_alignment
    • VK_EXT_shader_image_atomic_int64
    • VK_KHR_shader_atomic_int64
    • VK_KHR_shader_subgroup_extended_types
    • Controlul mărimii_subgrupului_VK_EXT
    • VK_KHR_fragment_shader_barycentric
    • VK_KHR_sincronizare2
    • VK_KHR_pipeline_executable_properties
  • S-a adăugat suport pentru extensii la driverul RADV Vulkan (AMD):
    • VK_EXT_image_compression_control
    • VK_EXT_defecțiune_dispozitiv
    • VK_KHR_calibrated_timestamps
    • VK_KHR_vertix_attribute_divisor
    • VK_KHR_maintenance6
    • VK_KHR_ray_tracing_position_fetch
    • VK_EXT_depth_clamp_zero_one
  • Suport pentru extensii a fost adăugat la driverul Asahi OpenGL pentru GPU-ul Apple AGX:
    • GL_EXT_disjoint_timer_query
    • GL_ARB_texture_cube_map_array
    • GL_ARB_clip_control
    • GL_ARB_timer_query
    • GL_ARB_base_instance
    • GL_ARB_shader_texture_image_samples
    • GL_ARB_parametri_indirecti
    • GL_ARB_viewport_array
    • GL_ARB_fragment_layer_viewport
    • GL_ARB_cull_distance
    • GL_ARB_transform_feedback_overflow_query
  • S-a adăugat suport pentru extensia EGL EGL_EXT_query_reset_notification_strategy.

Sursa: opennet.ru

Adauga un comentariu