Efter fire måneders udvikling blev udgivelsen af en gratis implementering af OpenGL og Vulkan API'erne - Mesa 22.0.0 - offentliggjort. Den første udgivelse af Mesa 22.0.0-grenen har en eksperimentel status - efter den endelige stabilisering af koden vil en stabil version 22.0.1 blive frigivet. Den nye udgivelse er bemærkelsesværdig for implementeringen af Vulkan 1.3 grafik API i anv driveren til Intel GPU'er og radv til AMD GPU'er.
Vulkan 1.2-understøttelse er tilgængelig i emulatortilstand (vn), Vulkan 1.1-understøttelse er tilgængelig for Qualcomm (tu) GPU'er og lavapipe-softwarerasterizer, og Vulkan 1.0-understøttelse er tilgængelig for Broadcom VideoCore VI (Raspberry Pi 4) GPU'er. Mesa 22.0 giver også fuld OpenGL 4.6-understøttelse til 965, iris (Intel), radeonsi (AMD), zink og llvmpipe-drivere. OpenGL 4.5-understøttelse er tilgængelig for AMD (r600) og NVIDIA (nvc0) GPU'er, og OpenGL 4.3-understøttelse til virgl (virgil3D virtuel GPU til QEMU/KVM) og vmwgfx (VMware).
Vigtigste innovationer:
- Tilføjet understøttelse af Vulkan 1.3 grafik API.
- Koden til klassiske OpenGL-drivere, der ikke bruger Gallium3D-grænsefladen, er blevet flyttet fra hoved-Mesa til en separat gren "Amber", inklusive i915- og i965-driverne til Intel GPU'er, r100 og r200 til AMD GPU'er og Nouveau til NVIDIA GPU'er. SWR-driveren, som tilbød en OpenGL-softwarerasterizer baseret på Intel OpenSWR-projektet, blev også flyttet til "Amber"-grenen. Det klassiske xlib-bibliotek er udelukket fra hovedstrukturen, i stedet for hvilket det anbefales at bruge gallium-xlib-varianten.
- Gallium-driveren D3D12 med et lag til organisering af OpenGL-arbejde oven på DirectX 12 API (D3D12) sikrer kompatibilitet med OpenGL ES 3.1. Driveren bruges i WSL2-laget til at køre Linux-grafiske applikationer på Windows.
- Understøttelse af Intel Alderlake (S og N)-chips er blevet tilføjet til OpenGL-driveren "iris" og Vulkan-driveren "ANV".
- Intel GPU-drivere inkluderer understøttelse af Adaptive-Sync (VRR) teknologi som standard, hvilket giver dig mulighed for adaptivt at ændre skærmens opdateringshastighed for jævn, rivefri visning.
- RADV Vulkan-driveren (AMD) fortsætter med at implementere understøttelse af strålesporing og shaders til strålesporing.
- v3dv-driveren, der er udviklet til VideoCore VI-grafikacceleratoren, der bruges startende med Raspberry Pi 4-modellen, giver mulighed for at arbejde på Android-platformen.
- For EGL er en "dma-buf feedback"-mekanisme implementeret, som giver yderligere information om de tilgængelige GPU'er og gør det muligt at øge effektiviteten af dataudveksling mellem den primære og sekundære GPU, for eksempel for at organisere output uden mellemliggende buffering.
- OpenGL 3-understøttelse er blevet tilføjet til vmwgfx-driveren, der bruges til at implementere 4.3D-acceleration i VMware-miljøer.
- Understøttelse af udvidelser er blevet tilføjet til Vulkan-driverne RADV (AMD), ANV (Intel) og zink (OpenGL over Vulkan):
- VK_KHR_dynamic_rendering (lavapipe,radv,anv)
- VK_EXT_image_view_min_lod (radv) KHR_synchronization2.txt VK_KHR_synchronization2]] (radv)
- VK_EXT_memory_object (zink)
- VK_EXT_memory_object_fd (zink)
- VK_EXT_semafor (zink)
- VK_EXT_semaphore_fd (zink)
- VK_VALVE_mutable_descriptor_type (zink)
- Tilføjet nye OpenGL-udvidelser:
- GL_ARB_sparse_texture (radeonsi, zink)
- GL_ARB_sparse_texture2 (radeonsi, zink)
- GL_ARB_sparse_texture_clamp (radeonsi, zink)
- GL_ARB_framebuffer_no_attachments
- GL_ARB_sample_shading
Kilde: opennet.ru