【问题标题】:How to use clutter to render directly to linux framebuffer?如何使用clutter直接渲染到linux framebuffer?
【发布时间】:2017-07-17 22:15:58
【问题描述】:
Gnome Clutter 网站说:
在带有本地后端窗口系统的 Linux、Windows 和 OSX 上运行
支持 GLX、EGL(在 X11 和帧缓冲表面上)、WGL 和
可可。
因此,Clutter 显然可以直接渲染到 Linux 帧缓冲区。如何在 Linux 中配置并让混乱工作直接渲染到帧缓冲区? Clutter 是否需要使用特殊配置等来构建?
【问题讨论】:
标签:
linux
opengl-es
framebuffer
yocto
clutter
【解决方案1】:
是的,您需要使用 EGL 原生后端构建 Clutter。您还需要一种访问帧缓冲设备的方法,这通常取决于驱动程序。
首先,您需要使用--enable-null-egl-platform 选项构建支持“空”EGL 平台的Cogl;和/或 KMS EGL 平台,使用 --enable-kms-egl-platform。这取决于您的目标平台。通常,较旧的二进制 blob 驱动程序将使用“空”EGL 后端,而较新的免费软件驱动程序将公开 KMS API 以设置帧缓冲区。
构建 Cogl 后,您需要使用 --enable-egl-backend 配置选项构建启用 EGL 后端的 Clutter。
如果一切顺利,您现在应该能够启动 Clutter 示例或直接在帧缓冲区上测试渲染。