OpenGL ES 2 控制台帧缓冲光标
Posted
技术标签:
【中文标题】OpenGL ES 2 控制台帧缓冲光标【英文标题】:OpenGL ES 2 Console Framebuffer Cursor 【发布时间】:2015-08-20 17:30:54 【问题描述】:我正在创建一个非常简单的 OpenGL ES 2.0 演示,它在 iMX6 内核上的 Yocto Linux 发行版上运行。我将图像直接写入控制台帧缓冲区,而不是使用 X11。我使用实现 EGL 的 Vivante GPU 驱动程序。
当我运行应用程序时,我看到光标在屏幕底部闪烁,如果我在程序执行期间键入,字母会出现在底部。作为计划的一部分,我该如何阻止这种情况发生?
【问题讨论】:
【参考方案1】:好的,我找到了答案here。
答案建议这样做,这也删除了电源管理:
#include <linux/kd.h>
int cfd;
// Set console to graphics mode
if((cfd=open("/dev/tty0", O_RDWR))<0)
fprintf(stderr, "Error - cannot open tty0\n");
return -1;
else
ioctl(cfd, KDSETMODE, KD_GRAPHICS);
我需要再添加两个包括,<fnctl.h>
和 <sys/ioctl.h>
。
警告 - 如果您的程序没有退出方式,那么这将禁用您按 CTRL C
停止程序的能力。
【讨论】:
以上是关于OpenGL ES 2 控制台帧缓冲光标的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iPhone OpenGL ES 2.0 中在渲染和呈现帧缓冲区之间切换?