glFlush: force execution of GL commands in finite time.
C Specification |
Different GL implementations buffer commands in several different locations,
including network buffers and the graphics accelerator itself.
glFlush empties all of these buffers, causing all issued commands to
be executed as quickly as they are accepted by the actual rendering engine.
Though this execution may not be completed in any particular time period, it
does complete in finite time.
Because any GL program might be executed over a network, or on an accelerator
that buffers commands, all programs should call glFlush whenever they
count on having all of their previously issued commands completed. For
example, call glFlush before waiting for user input that depends on
the generated image.
glFlush can return at any time. It does not wait until the
execution of all previously issued GL commands is complete.
- GL_INVALID_OPERATION is generated if glFlush is executed between the execution
of glBegin and the corresponding
execution of glEnd.