阀门承包商Mike Blumenkrantz又回来了,致力于对Mesa进行一些令人兴奋的改进,特别是ZinkOn-On-Vulkan实现。
昨天的合并是最新的Kopper码用于连接受损区域支撑物。Blumenkrantz在合并请求中解释说:
“这将从API一直到gallium探测损坏区域,以便x11/wayland/whatever能够将损坏更新发送到显示服务器”
这解决了LLVMtube/DRISW不支持EGL的KHR_PARTIAL_UPDATE和KHR_SWAP_BUFFERS_WITH_IMPORT的问题。最新的合并请求今天登陆了Mesa 24.1-devel随后将部分更新/损坏支持挂接到了Zink。正如迈克简单地说:
“这使显示服务器变得空荡荡的”
这允许Zink支持EGL_KHR_partial_update扩展,允许高效的曲面部分更新,而不必处理在帧之间没有改变的曲面区域。Zink驱动程序反过来依赖于Vulkan的VK_KHR_incremental_present扩展,该扩展允许应用程序指定要显示的每个图像的矩形修改区域列表。对于只有一小部分屏幕可能发生变化的情况,这种部分更新/损坏跟踪可以实现更有效的显示-更好的性能和可能的节能。虽然对于游戏来说,这不是很有用,但这种部分更新/损坏支持可能是有益的,特别是当使用Zink作为桌面的OpenGL驱动程序时。
因为侏儒42Mutter已支持EGL_KHR_partial_update, KDE Plasma's KWin introduced support originally three years ago, and is commonly supported elsewhere on the modern Linux desktop.