|Linux & Unix Commands - Search Man Pages
glXSwapBuffers - exchange front and back buffers
void glXSwapBuffers( Display *dpy,
GLXDrawable drawable )
dpy Specifies the connection to the X server.
drawable Specifies the drawable whose buffers are to be swapped.
glXSwapBuffers promotes the contents of the back buffer of drawable to become the contents
of the front buffer of drawable. The contents of the back buffer then become undefined.
The update typically takes place during the vertical retrace of the monitor, rather than
immediately after glXSwapBuffers is called.
glXSwapBuffers performs an implicit glFlush before it returns. Subsequent OpenGL commands
may be issued immediately after calling glXSwapBuffers, but are not executed until the
buffer exchange is completed.
If drawable was not created with respect to a double-buffered visual, glXSwapBuffers has
no effect, and no error is generated.
The contents of the back buffer become undefined after a swap. Note that this applies to
pbuffers as well as windows.
All GLX rendering contexts share the same notion of which are front buffers and which are
back buffers. One consequence is that when multiple clients are rendering to the same
double-buffered window, all of them should finish rendering before one of them issues the
command to swap buffers. The clients are responsible for implementing this synchroniza-
tion. Typically this is accomplished by executing glFinish and then using a semaphore in
shared memory to rendezvous before swapping.
GLXBadDrawable is generated if drawable is not a valid GLX drawable.
GLXBadCurrentWindow is generated if dpy and drawable are respectively the display and
drawable associated with the current context of the calling thread, and drawable identi-
fies a window that is no longer valid.
glFlush, glXBindSwapBarrierSGIX, glXJoinSwapGroupSGIX, glXSwapIntervalSGI
All times are GMT -4. The time now is 01:18 AM.