glXSwapBuffers(3G) OpenGL Reference - GLX glXSwapBuffers(3G)
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 pixel buffers 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
synchronization. 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 identifies a window that is no longer valid.
Page 1
glXSwapBuffers(3G) OpenGL Reference - GLX glXSwapBuffers(3G)
MACHINE DEPENDENCIES
Gang swap (multipipe synchronized buffer swaps) is not supported on
RealityEngine, RealityEngine2, and VTX systems. This will be fixed in a
future release.
Before a window's buffers can be swapped, at least one thread must have
attached an OpenGL rendering context to the window via glXMakeCurrent.
glXBindSwapBarrierSGIX, glFlush, glXJoinSwapGroupSGIX, glXSwapIntervalSGI
PPPPaaaaggggeeee 2222 [ Back ]
|