ΠΠΎΡΠ»Π΅ ΡΡΡΡ ΠΌΠ΅ΡΡΡΠ΅Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΠ΅Π»ΠΈΠ· ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ API OpenGL ΠΈ Vulkan β Mesa 25.1.0. ΠΠ΅ΡΠ²ΡΠΉ Π²ΡΠΏΡΡΠΊ Π²Π΅ΡΠΊΠΈ Mesa 25.1.0 ΠΈΠΌΠ΅Π΅Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΡΠ°ΡΡΡ β ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΡΡΠ΅Π½Π° ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ 25.1.1.
Π Mesa 25.1 Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ API Vulkan 1.4 Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ ANV Π΄Π»Ρ GPU Intel, RADV Π΄Π»Ρ GPU AMD, NVK Π΄Π»Ρ GPU NVIDIA, Asahi Π΄Π»Ρ GPU Apple, Turnip Π΄Π»Ρ GPU Qualcomm, Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΡΠ°ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΎΡΠ΅ lavapipe (lvp) ΠΈ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΌΡΠ»ΡΡΠΎΡΠ° (vn). Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ PanVK Π΄Π»Ρ GPU ARM Mali β Vulkan 1.2, Π° Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ v3dv (GPU Broadcom VideoCore Π΄Π»Ρ Raspberry Pi 4+) ΠΈ dzn (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Vulkan ΠΏΠΎΠ²Π΅ΡΡ Direct3D 12) β Vulkan 1.0.
Π Mesa ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ»Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenGL 4.6 Π΄Π»Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (ΡΡΠ°ΡΡΠ΅ GPU Intel Gen4-Gen7), zink, llvmpipe, virgl (Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ GPU Virgil3D Π΄Π»Ρ QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ° Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ OpenGL ΠΏΠΎΠ²Π΅ΡΡ DirectX 12) ΠΈ asahi (GPU AGX, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² ΡΠΈΠΏΠ°Ρ Apple M1 ΠΈ M2). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenGL 4.5 Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π»Ρ GPU AMD (r600) ΠΈ NVIDIA (nvc0). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenGL 3.3 ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ softpipe (ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΡΠ°ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΎΡ) ΠΈ nv50 (NVIDIA NV50). Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ panfrost (GPU ARM Mali) ΠΈ v3d (GPU Broadcom VideoCore) ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ OpenGL 3.1.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°:
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ PanVK ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ API Vulkan 1.2 Π΄Π»Ρ GPU ARM Mali Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ v10+. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ²Π΅ΡΠΎΠ²ΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² YCbCr. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΠΈΠΏΡ storagePushConstant16, storageInputOutput16 ΠΈ shaderFloat16. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU Mali G720 ΠΈ G725. ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΡ MSAA (Multisample anti-aliasing) Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ Ρ 8 ΠΈ 16 ΠΏΡΠΎΠ±Π°ΠΌΠΈ ΡΠ²Π΅ΡΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΈΠΊΡΠ΅Π»Ρ.
- Π OpenGL-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ Panfrost ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU Mali G720, G725 ΠΈ G925.
- Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΌΡΠ»ΡΡΠΎΡΠ° (vn) ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° API Vulkan 1.4.
- Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Asahi Π΄Π»Ρ GPU Apple AGX, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ Π² ΡΠΈΠΏΠ°Ρ Apple Silicon, ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Π° Π² Mesa, Π° Π² ΡΠΎΡΡΠ°Π² ΡΠ΄ΡΠ° Linux ΠΏΡΠΈΠ½ΡΡ Π΅Π³ΠΎ UAPI. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°.
- Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅Ρ NVK Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ GPU NVIDIA Maxwell (GTX 700/800/900), Pascal (GTX 1000) ΠΈ Volta (TITAN V), Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Vulkan 1.4. Π Π°Π½Π΅Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ Vulkan 1.4 Π² NVK Π±ΡΠ»Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ GPU NVIDIA Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ Turing (ΡΠ΅ΡΠΈΠΈ GeForce GTX 16xx, RTX 20xx ΠΈ Quadro RTX), Ampere (ΡΠ΅ΡΠΈΠΈ GeForce RTX 30xx ΠΈ RTX A2000/4000/5000/6000) ΠΈ Ada (ΡΠ΅ΡΠΈΠΈ GeForce RTX 4xxx, RTX 4000 SFF, RTX 4xxx/5000/6000 Ada). ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Vulkan-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ VK_MESA_image_alignment_control.
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenGL Π΄Π»Ρ GPU NVIDIA, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΌΠΈΠΊΡΠΎΠ°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Turing, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Nouveau (nvc0) Π½Π° OpenGL-Π΄ΡΠ°ΠΉΠ²Π΅Ρ Zink Π² ΡΠ²ΡΠ·ΠΊΠ΅ Ρ Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠΌ NVK. Zink ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ OpenGL 4.6 ΠΏΠΎΠ²Π΅ΡΡ Vulkan, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½Π½ΡΠΉ OpenGL Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ API Vulkan. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Zink Π±Π»ΠΈΠ·ΠΊΠ° ΠΊ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΎΠ΄Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ OpenGL.
- Π ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ API Vulkan Ρ ΠΎΠΊΠΎΠ½Π½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ (WSI, Windowing System Integration) ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Wayland-ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° color-management, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠΎΠΌ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΡΡΠΊΠΎΡΡΠΈ (HDR, High Dynamic Range).
- Π Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ ANV (Intel) ΡΠ»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU Intel Π½Π° Π±Π°Π·Π΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Xe2, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Intel Core Ultra Xe2 Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ Intel Arc ΠΈ Π΄ΠΈΡΠΊΡΠ΅ΡΠ½ΡΠ΅ GPU Intel Arc B580/B570 Β«BattlemageΒ».
- Π Vulkan-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ RADV (AMD) ΡΠ»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° GPU ΡΠ΅ΡΠΈΠΈ Radeon RX 9000 (RDNA4/GFX12). ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎ Ρ Π½ΠΈΠ·ΠΊΠΈΠΌΠΈ Π·Π°Π΄Π΅ΡΠΆΠΊΠ°ΠΌΠΈ. ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Vulkan-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ VK_EXT_device_memory_report ΠΈ VK_EXT_sample_locations.
- Π OpenGL-Π΄ΡΠ°ΠΉΠ²Π΅Ρ Etnaviv Π΄Π»Ρ GPU Vivante Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenGL-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ KHR_partial_update.
- Π OpenGL-Π΄ΡΠ°ΠΉΠ²Π΅Ρ v3d (GPU Broadcom VideoCore Π΄Π»Ρ Raspberry Pi) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenGL-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ EXT_shader_framebuffer_image_fetch, EXT_shader_framebuffer_image_fetch_coherent, KHR_blend_equation_advanced ΠΈ KHR_blend_equation_advanced_coherent.
- ΠΠ±ΡΡΠ²Π»Π΅Π½ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ OpenCL-Π΄ΡΠ°ΠΉΠ²Π΅Ρ Clover, Π½Π° ΡΠΌΠ΅Π½Ρ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΈΡΡΠ» Π΄ΡΠ°ΠΉΠ²Π΅Ρ Rusticl, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust.
- Π Π΄ΡΠ°ΠΉΠ²Π΅Ρ Rusticl Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° OpenCL-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ cl_khr_spirv_linkonce_odr.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ΅ PanVK ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Vulkan-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ:
- VK_KHR_depth_stencil_resolve
- VK_KHR_separate_depth_stencil_layouts
- VK_EXT_separate_stencil_usage
- VK_KHR_sampler_ycbcr_conversion
- VK_EXT_ycbcr_2plane_444_formats
- VK_EXT_ycbcr_image_arrays
- VK_KHR_imageless_framebuffer
- VK_KHR_uniform_buffer_standard_layout
- VK_EXT_border_color_swizzle
- VK_KHR_shader_subgroup_uniform_control_flow
- VK_KHR_shader_maximal_reconvergence
- VK_KHR_shader_subgroup_extended_types
- VK_KHR_display
- VK_EXT_display_control
- VK_KHR_line_rasterization
- VK_EXT_line_rasterization
- VK_KHR_shader_float_controls
- VK_KHR_shader_float_controls2
- VK_KHR_spirv_1_4
- VK_KHR_dynamic_rendering_local_read
- VK_EXT_subgroup_size_control
- VK_KHR_format_feature_flags2
- VK_EXT_direct_mode_display
- ΠΠ±ΡΡΠ²Π»Π΅Π½ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ ΠΈ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π²ΡΠΏΡΡΠΊΠ΅ ΡΡΠ΅ΠΊΠ΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ gallium-nine, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ API Direct3D 9.
- ΠΠ±ΡΡΠ²Π»Π΅Π½ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠΌ ΠΈ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π²ΡΠΏΡΡΠΊΠ΅ ΡΡΠ΅ΠΊΠ΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ Β«gallium-xaΒ», ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ GPU VMWare (Β«vmwgfxΒ»).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru