使用c ++ glX在WebGL之间共享OpenGL上下文,用于本机NaCl或Node.js插件

时间:2016-11-17 00:49:23

标签: opengl opengl-es webgl x11 glx

我的目标是在WebGL(在浏览器,canvas.getContext())和glx扩展(glXCreateContext [1])之间共享c ++(arch linux)的资源(纹理),以便在WebGL和X之间共享纹理。

即。将X窗口(使用支持pixmap)加载到WebGL纹理中,而不使用XGetImage / XGetSubImage / XShmGetImage / XShmGetSubImage直接访问支持pixmap。

  1. 考虑到WebGL是OpenGL ES 2.0,可以做到这一点吗?
  2. 如果是这样,我如何获取上下文的句柄?
  3. 我可以将WebGL上下文作为当前上下文,然后使用 glXGetCurrentContext?
  4. 有没有其他方法可以在WebGL和c ++ glX之间共享纹理?
  5. 进一步澄清,这个想法是, 浏览器中的CreateContext(webgl) - >使用C ++应用程序共享句柄 - >用c ++创建新的glXContext - >在它们之间分享纹理。

    最后,由于我一般都是OpenGL的新手,我一直想知道,所有OpenGL / OpenGL ES / WebGL上下文之间共享的纹理对象是什么?如果我们知道如何绑定它可以吗?

    [1] glX创建上下文功能,记下共享列表。

    GLXContext glXCreateContext(    Display *   dpy,
        XVisualInfo *   vis,
        GLXContext      shareList,
        Bool    direct);
    

0 个答案:

没有答案