پس از چهار ماه توسعه، انتشار اجرای رایگان OpenGL و API های Vulkan، Mesa 22.0.0 منتشر شد. اولین نسخه از شعبه Mesa 22.0.0 وضعیت آزمایشی دارد - پس از تثبیت نهایی کد، نسخه پایدار 22.0.1 منتشر خواهد شد. نسخه جدید به دلیل اجرای API گرافیکی Vulkan 1.3 در درایور anv برای پردازندههای گرافیکی اینتل و radv برای پردازندههای گرافیکی AMD قابل توجه است.
پشتیبانی Vulkan 1.2 در حالت شبیه ساز (vn)، پشتیبانی Vulkan 1.1 برای Qualcomm GPU (tu) و شطرنجی نرم افزار lavapipe و پشتیبانی Vulkan 1.0 برای Broadcom VideoCore VI GPU (Raspberry Pi 4) در دسترس است. Mesa 22.0 همچنین پشتیبانی کامل از OpenGL 4.6 را برای درایورهای 965، iris (اینتل)، radeonsi (AMD)، zink و llvmpipe ارائه میکند. پشتیبانی از OpenGL 4.5 برای پردازندههای گرافیکی AMD (r600) و NVIDIA (nvc0) و OpenGL 4.3 برای virgl (GPU مجازی Virgil3D برای QEMU/KVM) و vmwgfx (VMware) در دسترس است.
نوآوری های اصلی:
- پشتیبانی از API گرافیکی Vulkan 1.3 اضافه شده است.
- کد درایورهای OpenGL کلاسیک که از رابط Gallium3D استفاده نمیکنند، از جمله درایورهای i915 و i965 برای پردازندههای گرافیکی اینتل، r100 و r200 برای پردازندههای گرافیکی AMD، و Nouveau برای پردازندههای گرافیکی NVIDIA، از ترکیب اصلی Mesa به یک شاخه جداگانه منتقل شدهاند. کهربا". درایور SWR نیز به شعبه آمبر منتقل شد، که نرم افزار OpenGL شطرنجگر را بر اساس پروژه اینتل OpenSWR ارائه کرد. کتابخانه کلاسیک xlib از ترکیب اصلی حذف شده است، به جای آن توصیه می شود از نوع gallium-xlib استفاده شود.
- درایور گالیوم D3D12 با لایه OpenGL در بالای DirectX 12 API (D3D12) با OpenGL ES 3.1 سازگاری دارد. درایور در لایه WSL2 برای اجرای برنامه های گرافیکی لینوکس در ویندوز استفاده می شود.
- پشتیبانی از تراشه های Intel Alderlake (S و N) در درایور OpenGL "iris" و Vulkan درایور "ANV" اضافه شده است.
- درایورهای پردازنده گرافیکی اینتل به طور پیشفرض برای پشتیبانی از Adaptive-Sync (VRR) فعال هستند، که به شما امکان میدهد نرخ تازهسازی مانیتور خود را برای خروجی صاف و بدون پارگی تغییر دهید.
- درایور Vulkan RADV (AMD) به پشتیبانی از ردیابی پرتو و سایه زن های ردیابی پرتو ادامه می دهد.
- درایور v3dv توسعه یافته برای شتاب دهنده گرافیکی VideoCore VI که از مدل Raspberry Pi 4 استفاده شده است، توانایی کار بر روی پلتفرم اندروید را فراهم می کند.
- برای EGL، مکانیسم "بازخورد dma-buf" پیاده سازی شده است که اطلاعات اضافی در مورد GPU های موجود ارائه می دهد و به شما امکان می دهد کارایی تبادل داده ها را بین GPU های اصلی و ثانویه افزایش دهید، به عنوان مثال، برای سازماندهی خروجی بدون بافر میانی.
- پشتیبانی از OpenGL 3 به درایور vmwgfx که برای پیاده سازی شتاب سه بعدی در محیط های VMware استفاده می شود، اضافه شده است.
- پشتیبانی از برنامه های افزودنی اضافه شده به درایورهای Vulkan RADV (AMD)، ANV (اینتل) و 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 (زینک)
- VK_EXT_memory_object_fd (zink)
- VK_EXT_semaphore (زینک)
- VK_EXT_semaphore_fd (زینک)
- VK_VALVE_mutable_descriptor_type (zink)
- افزودن پسوندهای OpenGL جدید:
- 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
منبع: opennet.ru