【发布时间】:2012-10-26 23:23:30
【问题描述】:
我想写一个基本的硬件加速窗口管理器,所以我一直在寻找一些关于如何开始的文档,但我只找到了this tutorial,它使用了一个过时版本的 Clutter并且不会使用当前可用的任何版本进行构建。是否有任何其他好的资源可以做到这一点,或者,一个真正的准系统合成 WM 来查看其来源?
【问题讨论】:
标签: linux x11 clutter compositing
我想写一个基本的硬件加速窗口管理器,所以我一直在寻找一些关于如何开始的文档,但我只找到了this tutorial,它使用了一个过时版本的 Clutter并且不会使用当前可用的任何版本进行构建。是否有任何其他好的资源可以做到这一点,或者,一个真正的准系统合成 WM 来查看其来源?
【问题讨论】:
标签: linux x11 clutter compositing
最初的演示合成管理器是 xcompmgr,我建议使用它来了解底层 X 扩展。
如果您使用 OpenGL 进行硬件加速渲染,则需要阅读 EXT_texture_from_pixmap 扩展名,以避免通过用户空间复制窗口内容。该扩展允许您对这些副本使用硬件加速的 blit。
您可能还会对_NET_WM_SYNC_REQUEST 的规范感兴趣,以允许与垂直回溯同步的无撕裂渲染。
【讨论】:
您的问题有两个部分:1)如何编写 WM 2)如何编写复合管理器
一些有助于理解第二部分的链接(除了 xcompmgr 源):
窗口管理器,“第一部分”:
SubstructureRedirect 事件掩码。一点文档here 【讨论】: