Pagpagawas sa Mesa 21.1, usa ka libre nga pagpatuman sa OpenGL ug Vulkan

Ang pagpagawas sa libre nga pagpatuman sa OpenGL ug Vulkan API - Mesa 21.1.0 - gipresentar. Ang una nga pagpagawas sa sanga sa Mesa 21.1.0 adunay usa ka eksperimento nga kahimtang - pagkahuman sa katapusan nga pagpalig-on sa code, usa ka lig-on nga bersyon 21.1.1 ipagawas. Ang Mesa 21.1 naglakip sa bug-os nga suporta alang sa OpenGL 4.6 para sa 965, iris (Intel), radeonsi (AMD), zink ug llvmpipe nga mga drayber. Ang suporta sa OpenGL 4.5 magamit alang sa AMD (r600) ug NVIDIA (nvc0) nga mga GPU, ug suporta sa OpenGL 4.3 alang sa virgl (Virgil3D virtual GPU alang sa QEMU/KVM). Ang suporta sa Vulkan 1.2 gipatuman para sa Intel ug AMD cards, Vulkan 1.1 para sa Qualcomm GPUs ug ang lavapipe software rasterizer, ug Vulkan 1.0 para sa Broadcom VideoCore VI GPUs (Raspberry Pi 4).

Panguna nga mga inobasyon:

  • Ang suporta alang sa VK_KHR_workgroup_memory_explicit_layout ug VK_KHR_zero_initialize_workgroup_memory nga mga extension gidugang sa Vulkan drivers RADV (AMD) ug ANV (Intel).
  • Ang suporta alang sa DRM format modifiers gidugang sa RADV driver (alang sa AMD GFX9 cards) (ang VK_EXT_image_drm_format_modifier extension gi-enable).
  • Ang drayber sa RADV naglakip sa suporta sa VRS (Variable Rate Shading) para magamit sa bisan unsang mga depth buffer. Ang VRS nagpauswag sa pagka-produktibo sa kantidad sa kalidad.
  • Gidugang nga suporta alang sa AMD Aldebaran GPU (gfx90a).
  • Gidugang ang usa ka bag-ong driver sa venus nga adunay usa ka virtual nga pagpatuman sa GPU (virtio-gpu) base sa Vulkan API.
  • Ang Zink driver (usa ka pagpatuman sa OpenGL API sa ibabaw sa Vulkan) naglakip sa suporta alang sa OpenGL 4.6 ug OpenGL ES 3.1. Gitugotan ka sa Zink nga makakuha og hardware accelerated OpenGL kung ang sistema adunay mga driver nga limitado sa pagsuporta lamang sa Vulkan API. Ang pasundayag ni Zink duol ra sa lumad nga mga pagpatuman sa OpenGL.
  • Ang drayber sa lavapipe nga adunay pagpatuman sa usa ka software rasterizer alang sa Vulkan API (kaamgid sa llvmpipe, apan alang sa Vulkan) nagdugang suporta alang sa Vulkan 1.1 ug gipatuman ang Vulkan extension VK_KHR_copy_commands2. Ang pagpatuman sa software sa lavapipe gibase sa pagsalamin sa mga tawag sa Vulkan API ngadto sa Gallium API.
  • Gidugang nga suporta alang sa pagtipig sa mga shader cache sa usa ka file.
  • Ang Virgl (Virtual GPU Virgil3D para sa QEMU/KVM) ug Lima (ARM Mali GPU) nga mga drayber naghatag og suporta alang sa caching shaders sa disk.
  • Ang drayber sa Gallium nga D3D12 nga adunay usa ka layer alang sa pag-organisar sa trabaho sa OpenGL sa ibabaw sa DirectX 12 API (D3D12) nagsiguro sa pagkaangay sa OpenGL 3.3 kung nagtrabaho sa ibabaw sa mga drayber sa D3D12 nga WARP (software rasterizer) ug NVIDIA. Ang drayber gigamit sa WSL2 layer aron sa pagpadagan sa Linux graphical applications sa Windows.
  • Gidugang bag-ong mga extension sa OpenGL:
    • GL_EXT_depth_bounds_test para sa softpipe ug zink drivers
    • GL_EXT_texture_filter_minmax para sa driver sa nvc0 (gm200+)
    • GL_ARB_texture_filter_minmax para sa driver sa nvc0 (gm200+)
    • GL_ARB_post_depth_coverage para sa zink driver.

Source: opennet.ru

Idugang sa usa ka comment