使用 XEmbed 是否会限制 OpenGL 功能?
我正在为 Linux 构建一个 NPAPI 插件,该插件对由插件控制的窗口使用 XEmbed 协议。我使用 Gtk+ 附加到窗口,用 GtkPlug 包装 XEmbed 窗口。我想在窗口上渲染 OpenGL 表面(使用 GtkGLExt),但是当我启用生成的 OpenGL 上下文时,我无法创建 GLSL 着色器;事实上,查询 glGetString( GL_VERSION ) 的值显示 OpenGL 的版本字符串已从“2.1 NVIDIA...”更改为“1.4 (2.1 NIVIDIA...)”,这表明 GL 驱动程序已降级 OpenGL 功能这种情况。
我还没有找到任何关于使用 XEmbed 对 OpenGL 功能造成的限制的直接参考。有谁知道 XEmbed 是否有效地将 OpenGL 降级为固定管道?
I am building an NPAPI plugin for Linux that uses the XEmbed protocol for the window that is controlled by the plugin. I am using Gtk+ for attaching to the window, wrapping the XEmbed window with a GtkPlug. I want to render an OpenGL surface on the window (using GtkGLExt) but when I enable the resulting OpenGL context I am unable to create GLSL shaders; indeed, querying the value of glGetString( GL_VERSION ) shows that the version string for OpenGL has changed from "2.1 NVIDIA..." to "1.4 (2.1 NIVIDIA...)", suggesting that the GL drivers have downgraded the OpenGL functionality in this situation.
I haven't been able to find any direct references to limitations that using XEmbed places on OpenGL functionality. Does anyone know if XEmbed effectively downgrades OpenGL to a fixed pipeline?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论