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
This archive was generated by hypermail 2b29 : Fri Oct 13 2000 - 12:23:36 PDT