Predstavljeno je izdanje besplatne implementacije OpenGL i Vulkan API-ja - Mesa 21.1.0. Prvo izdanje grane Mesa 21.1.0 ima eksperimentalni status - nakon konačne stabilizacije koda, bit će objavljena stabilna verzija 21.1.1. Mesa 21.1 uključuje punu podršku za OpenGL 4.6 za 965, iris (Intel), radeonsi (AMD), zink i llvmpipe drajvere. Podrška za OpenGL 4.5 je dostupna za AMD (r600) i NVIDIA (nvc0) GPU, a podrška za OpenGL 4.3 za virgl (Virgil3D virtuelni GPU za QEMU/KVM). Podrška za Vulkan 1.2 je implementirana za Intel i AMD kartice, Vulkan 1.1 za Qualcomm GPU i softverski rasterizator lavapipe, a Vulkan 1.0 za Broadcom VideoCore VI GPU (Raspberry Pi 4).
Glavne inovacije:
- Podrška za VK_KHR_workgroup_memory_explicit_layout i VK_KHR_zero_initialize_workgroup_memory ekstenzije je dodata Vulkan drajverima RADV (AMD) i ANV (Intel).
- Podrška za modifikatore DRM formata dodata je RADV drajveru (za AMD GFX9 kartice) (ekstenzija VK_EXT_image_drm_format_modifier je omogućena).
- RADV drajver uključuje VRS (Variable Rate Shading) podršku za upotrebu sa bilo kojim dubinskim baferima. VRS poboljšava produktivnost po cijenu kvaliteta.
- Dodata podrška za AMD Aldebaran GPU (gfx90a).
- Dodan je novi venus drajver sa implementacijom virtuelnog GPU-a (virtio-gpu) zasnovan na Vulkan API-ju.
- Zink drajver (implementacija OpenGL API-ja na vrhu Vulkana) uključuje podršku za OpenGL 4.6 i OpenGL ES 3.1. Zink vam omogućava da dobijete hardverski ubrzan OpenGL ako sistem ima drajvere ograničene na podršku samo za Vulkan API. Zink-ove performanse su bliske performansama izvornih OpenGL implementacija.
- Lavapipe drajver sa implementacijom softverskog rasterizatora za Vulkan API (analogno llvmpipeu, ali za Vulkan) dodao je podršku za Vulkan 1.1 i implementirao Vulkan ekstenziju VK_KHR_copy_commands2. Implementacija softvera u lavapipe-u zasnovana je na preslikavanju Vulkan API poziva na Gallium API.
- Dodata podrška za pohranjivanje predmemorije shadera u jednu datoteku.
- Virgl (Virtual GPU Virgil3D za QEMU/KVM) i Lima (ARM Mali GPU) drajveri pružaju podršku za keširanje shadera na disku.
- Gallium D3D12 drajver, sa svojim OpenGL overlay-om za DirectX 12 API (D3D12), pruža kompatibilnost sa OpenGL 3.3 kada se pokreće preko WARP (softverski rasterizator) i NVIDIA D3D12 drajvera. Drajver se koristi u WSL2 overlay-u za pokretanje grafičkih aplikacija. Linux в Windows.
- Dodane nove OpenGL ekstenzije:
- GL_EXT_depth_bounds_test za softpipe i zink drajvere
- GL_EXT_texture_filter_minmax za nvc0 drajver (gm200+)
- GL_ARB_texture_filter_minmax za nvc0 drajver (gm200+)
- GL_ARB_post_depth_coverage za zink drajver.
izvor: opennet.ru
