Zink Lands支持部分更新/损坏处理


阀门承包商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.

上一篇 为什么ValueError(\"operator must be unary (1), binary (2), or ternary (3)\"),怎么解决
下一篇 解决方案:django exceptions.FieldError(\"The relation has multiple target fields, but only single target field \"\"was asked for\")