OpenGL 和 Vulkan API 的免費實作 Mesa 21.1.0 現已發布。 Mesa 21.1.0 分支的首個版本目前處於實驗階段-待程式碼最終穩定後,將發布穩定版本 21.1.1。 Mesa 21.1 全面支援 4.6、Iris(英特爾)、RadeonSi(AMD)、Zink 和 llvmpipe 驅動程式的 OpenGL 965。 AMD(r4.5)和 NVIDIA(nvc600)GPU 支援 OpenGL 0,virgl(用於 QEMU/KVM 的 Virgil4.3D 虛擬 GPU)則支援 OpenGL 3。 Vulkan 1.2 支援英特爾和 AMD 卡,Vulkan 1.1 支援高通 GPU 和 lavapipe 軟體光柵化器,Vulkan 1.0 支援 Broadcom VideoCore VI GPU(Raspberry Pi 4)。
主要創新:
- 為 RADV(AMD)和 ANV(Intel)Vulkan 驅動程式新增了對 VK_KHR_workgroup_memory_explicit_layout 和 VK_KHR_zero_initialize_workgroup_memory 擴充功能的支援。
- RADV 驅動程式(適用於 AMD GFX9 卡)增加了對 DRM 格式修改器的支援(啟用了 VK_EXT_image_drm_format_modifier 擴充功能)。
- RADV 驅動程式實現了 VRS(可變速率著色)支持,可與任何深度緩衝區配合使用。 VRS 允許以犧牲品質為代價來提高效能。
- 增加了對 AMD Aldebaran (gfx90a) GPU 的支援。
- 新增了基於 Vulkan API 的虛擬 GPU(virtio-gpu)實現的新 venus 驅動程式。
- Zink 驅動程式(基於 Vulkan 實作的 OpenGL API)支援 OpenGL 4.6 和 OpenGL ES 3.1。當系統驅動程式僅支援 Vulkan API 時,Zink 可以啟用硬體加速的 OpenGL。 Zink 的效能接近原生 OpenGL 實作。
- lavapipe 驅動程式實現了針對 Vulkan API 的軟體光柵化器(類似於 llvmpipe,但適用於 Vulkan),並添加了對 Vulkan 1.1 的支持,並實現了 Vulkan 擴展 VK_KHR_copy_commands2。 lavapipe 中的軟體實作基於 Gallium API 中 Vulkan API 呼叫的反射。
- 增加了在單一檔案中儲存著色器快取的支援。
- Virgl(用於 QEMU/KVM 的虛擬 GPU Virgil3D)和 Lima(ARM Mali GPU)驅動程式現在支援磁碟上的著色器快取。
- Gallium D3D12 驅動程式及其用於 DirectX 12 API (D3D12) 的 OpenGL 覆蓋層,在 WARP(軟體光柵化器)和 NVIDIA D3D12 驅動程式之上運行時,可相容於 OpenGL 3.3。此驅動程式用於 WSL2 覆蓋層,以運行圖形應用程式。 Linux в Windows.
- 新增了新的 OpenGL 擴充:
- GL_EXT_depth_bounds_test 用於 softpipe 和 zink 驅動程式
- 適用於 nvc0 驅動程式 (gm200+) 的 GL_EXT_texture_filter_minmax
- 適用於 nvc0 驅動程式 (gm200+) 的 GL_ARB_texture_filter_minmax
- zink 驅動程式的 GL_ARB_post_depth_coverage。
來源: opennet.ru
