UNTITLED LOCAL UNTITLED
NAME
glutInitDisplayMode -- Set the window creation display mode.
LIBRARY
OpenGLUT - window
SYNOPSIS
#include <openglut.h>
void
glutInitDisplayMode(unsigned int displayMode);
PARAMETERS
displayMode Requested display mode bitmask.
DESCRIPTION
glutInitDisplayMode() allows you to control the mode for subsequent OpenGLUT windows.
Allowable displayMode is a combination of:
- GLUT_RGB
Red, green, blue framebuffer.
- GLUT_RGBA
Red, green, blue, alpha framebuffer.
- GLUT_INDEX
Indexed color framebuffer.
- GLUT_SINGLE
Single-buffered mode.
- GLUT_DOUBLE
Double-buffered mode.
- GLUT_ACCUM
Accumulation buffer.
- GLUT_ALPHA
Alpha channel.
- GLUT_DEPTH
Depth buffering.
- GLUT_STENCIL
Stencil buffering.
- GLUT_MULTISAMPLE
Multisampling mode. (not always available)
- GLUT_STEREO
Left and right framebuffers.
- GLUT_LUMINANCE
Greyscale color mode.
Additionally, the following experimental features are implemented:
- GLUT_OFFSCREEN
Offscreen windows are very much like onscreen windows that have been dragged off of the edge of the screen. The biggest issue is that off-
screen windows do not support subwindows. Other than that, onscreen windows that are dragged off of the edge may not store graphics that you
render (while GLUT_OFFSCREEN windows do), and there is no way to drag an offscreen window onscreen for user interaction.
- GLUT_BORDERLESS
Borderless windows are very experimental, and their precise behavior is not set in stone. See also glutCreateMenuWindow().
The following are defaults :
- GLUT_RGB
- GLUT_SINGLE
CAVEATS
Some display mode features were introduced by OpenGLUT.
Not all features or combinations of features are valid for all platforms.
There is no way to change the display mode of an open window.
BUGS
GLUT_OFFSCREEN windows do not work with nVidia cards/drivers. (Both Win32 and X11)
GLUT_BORDERLESS seems to vary by the window manager on X11, though twm (for example) performs very similarly to WIN32. But KDE's window
manager (for example) does not let you send keystrokes to borderless windows without OpenGLUT hacks.
SEE ALSO glutCreateMenuWindow(3)glutInit(3)glutInitWindowSize(3)glutInitWindowPosition(3)glutInitDisplayString(3)glutSwapBuffers(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