Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

glutswapbuffers(3) [centos man page]

UNTITLED
LOCAL UNTITLED NAME
glutSwapBuffers -- Swaps the buffers for the current window. LIBRARY
OpenGLUT - window SYNOPSIS
#include <openglut.h> void glutSwapBuffers(void); DESCRIPTION
This function signals to OpenGLUT that you are done drawing to the current window for now. If your window is double-buffered ( GLUT_DOU- BLE param to glutInitDisplayMode()), then OpenGLUT will swap the front buffer with the back buffer. This also computes your current frame-rate and prints the result on stderr if indicated by the GLUT_FPS environment variable. The com- puted value is not necessarily the total frame rate, if you have multiple windows, as the statistic is the total number of buffer-swaps for the entire program. CAVEATS
This function has no effect if your window is GLUT_SINGLE . Frame rate is only calculated for double-buffered windows. TODO
How does this interact with overlays? Consider making GLUT_FPS keep per-window stats in a multi-window program. SEE ALSO
glutPostRedisplay(3) glutPostOverlayRedisplay(3) glutPostWindowRedisplay(3) glutPostWindowOverlayRedisplay(3) glutInitDisplaymode(3) Epoch

Check Out this Related Man Page

UNTITLED
LOCAL UNTITLED NAME
glutInit -- Initialize OpenGLUT data structures. LIBRARY
OpenGLUT - mainloop SYNOPSIS
#include <openglut.h> void glutInit(int *pargc, char **argv); PARAMETERS
pargc Pointer to something like main()'s argc. argv Something like main()'s argv. DESCRIPTION
This function should be called once, near the start of any GLUT, freeglut, or OpenGLUT program. It serves two vital roles: - It allows OpenGLUT to initialize internal structures. - It allows OpenGLUT to process command-line arguments to control the initial window position, etc. You should take note of the interaction between glutInit() and the related functions such as glutInitWindowPosition(). OpenGLUT always uses the most recent configuration information, so if you call glutInit(), then glutInitWindowPosition(), you prevent the user from controlling the initial window position via a command-line parameter. glutInit() will remove from pargc, argv any parameters that it recognizes in the command line. The following command-line parameters are suported: - -display display-id This allows connection to an alternate X server. - -geometry geometry-spec This takes width, height, and window position. The position is given as a signed value (negative values being distance from the far boundary of the screen). For example, a window geometry of 5x7+11-17 is 5 pixels wide, 7 pixels tall, 11 pixels from the left, and 17 pixels from the bottom edge of the screen. - -direct Insist on only OpenGL direct rendering. Direct rendering is normally requested but indirect is normally accepted. -direct is not always available. See -indirect. - -indirect Attempt only indirect OpenGL rendering. -indirect is always available. See -direct. - -iconic Open the window in iconized form. - -gldebug Print any detected OpenGL errors via glutReportErrors(). Presently done at the bottom of glutMainLoopEvent(). - -sync Synchronize the window system communications heavily. Additionally, this function checks whether the environment variable GLUT_FPS is defined (only on UNIX_X11); if so, OpenGLUT will periodi- cally print the average number of times per second that your program calls glutSwapBuffers(). CAVEATS
You really should always call this, even if you are a WIN32 user. It provides a way for the user to directly inform OpenGLUT about prefer- ences without the application needing to explicitly deal with those issues. This is also where OpenGLUT retrieves your program's name to help disambiguate error and warning messages it may be forced to emit. Option -sync sets a flag, but is not actually used at this time. Lots of code does XFlush() on the X server, regardless of whether -sync is specified. Much of that appears to be required in order to sup- port direct client invocation of glutMainLoopEvent(), regrettably. However, if one calls glutMainLoop(), instead, we might avoid gratuitous XFlush() calls. (That last sentence isn't particularly germain to this function, but there's no better place to make this remark at this time.) Even for glutMainLoopEvent(), we may be able to coalesce many XFlush() calls. SEE ALSO
glutInitWindowPosition(3) glutInitWindowSize(3) glutInitDisplayMode(3) glutInitDisplayString(3) glutCreateWindow(3) glutDisplayFunc(3) glutMainLoop(3) glutMainLoopEvent(3) glutReportErrors(3) glutSwapBuffers(3) Epoch
Man Page