glXCreateGLXVideoSourceSGIX

New Message Reply Date view Thread view Subject view Author view

From: Satheesh Ganapathi Subramanian (gsat++at++evl.uic.edu)
Date: 10/13/2000 12:23:05


Hi Performers,

I'm trying to use SIRIUS video to texture map on an ONYX with RE within a
CAVE program. I'm facing a problem when trying to create a
glXVideoSourceSGIX object using the glXCreateGLXVideoSourceSGIX function.

The code snippet of the PreDraw callback for the VideoScreen (is derived
from pfDCS and has a simple polygon attached to it) is shown below:

int VideoScreen::PreDraw(pfTraverser *trav)
{
    pfChannel *chan = trav->getChan();

    if (!display)
    {
         display = pfGetCurWSConnection();
         pipeWindow = chan->getPipe()->getPWin(0);
         pfPipe *pipe = chan->getPipe();
         videoSource = glXCreateGLXVideoSourceSGIX(display, 0, video->svr,
                                video->path, VL_TEXTURE, video->drn);
         if (videoSource == None)
         {
                    fprintf(stderr, "can't create video source\n");
                    perror("debug");
                    //exit(EXIT_FAILURE);
         }
     }
     if (!glXMakeCurrentReadSGI(display, pipeWindow->getCurWSDrawable(),
                                videoSource, pipeWindow->getGLCxt()))
        cerr << "glXMakeCurrentReadSGI failed \n";

     tex->load(); /* tex is a pfTexture* inside VideoScreen class */
}

glXCreateGLXVideoSourceSGIX returns None.

initialize()
{
        This function creates a new pfScene and attaches it to the
        pfCAVEMasterChan().
}

initialize is called before the VideoScreen object is created and added to
the scene graph. I think the pfGetCurWSConnection is not returning a valid
Display* as the other parameters for glXCreateGLXVideoSourceSGIX appear to
be correct.

Any help in solving this problem would be most appreciated.

Thanks,
Satheesh


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2b29 : Fri Oct 13 2000 - 12:23:36 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.