有没有办法在 GTK3 应用程序中拥有 OpenGL 上下文?

Posted

技术标签:

【中文标题】有没有办法在 GTK3 应用程序中拥有 OpenGL 上下文?【英文标题】:Is there a way to have an OpenGL context inside a GTK3 application? 【发布时间】:2012-08-22 15:36:04 【问题描述】:

我查看了 GtkGlExt,但它仅适用于 GTK2。不幸的是,经过几个小时的搜索,似乎没有人关心拥有像 OpenGLDrawingArea 这样的东西......

欢迎提供任何信息。哪怕是“暂时不可能”。

【问题讨论】:

使用 Clutter 怎么样? 如developer's manual中所述:Clutter works by manipulating a scene-graph of 2D surfaces, or 'actors', inside a 3D space.。 COGL 可以用于此,因为它是 OpenGL 之上的一个小层。但是,目前还不能use it smoothly in GTK+ 应用程序…… 没有人尝试过这样做吗? 你想在什么平台上做这个? Xorg、Windows 还是 OSX? 平台是Linux上的Xorg 【参考方案1】:

看起来你有几个选择。

    使用开发中的port of gtkglext to gtk3 通过设置 SDL_WINDOWID 环境变量,使用 SDL 绘制到您的 GTK 应用程序中 自行管理 GLX 以为您的 GTK 应用创建 OpenGL 上下文。

我找到了一个应用程序spectrum3d,它实现了前两个替代方案。

第三个选项会相当复杂,可能不值得追求。

【讨论】:

3.真的没有听起来那么糟糕

以上是关于有没有办法在 GTK3 应用程序中拥有 OpenGL 上下文?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Gtk3 可选标签中设置光标颜色?

高级openg 混合,一个完整程序

优化流媒体vbo openg

如何将 GTK2 像素图移植到 GTK3_

将 C 中的 gtk3 与 C++ 中的 gtkmm 结合起来

有没有办法在没有 javascript 的移动应用程序上拥有一个完整的网站按钮?