Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 4357 → Rev 4358

/contrib/sdk/sources/Mesa/docs/specs/MESA_swap_control.spec
0,0 → 1,129
Name
 
MESA_swap_control
 
Name Strings
 
GLX_MESA_swap_control
 
Contact
 
Ian Romanick, IBM, idr at us.ibm.com
 
Status
 
Deployed in DRI drivers post-XFree86 4.3.
 
Version
 
Date: 5/1/2003 Revision: 1.1
 
Number
 
???
 
Dependencies
 
None
 
Based on GLX_SGI_swap_control version 1.9 and WGL_EXT_swap_control
version 1.5.
 
Overview
 
This extension allows an application to specify a minimum periodicity
of color buffer swaps, measured in video frame periods.
 
Issues
 
* Should implementations that export GLX_MESA_swap_control also export
GL_EXT_swap_control for compatibility with WGL_EXT_swap_control?
 
UNRESOLVED.
 
New Procedures and Functions
 
int glXSwapIntervalMESA(unsigned int interval)
int glXGetSwapIntervalMESA(void)
 
New Tokens
 
None
 
Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
 
None
 
Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
 
None
 
Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
and the Framebuffer)
 
None
 
Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
 
None
 
Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
 
None
 
Additions to the GLX 1.3 Specification
 
[Add the following to Section 3.3.10 of the GLX Specification (Double
Buffering)]
 
glXSwapIntervalMESA specifies the minimum number of video frame periods
per buffer swap. (e.g. a value of two means that the color buffers
will be swapped at most every other video frame.) A return value
of zero indicates success; otherwise an error occurred. The interval
takes effect when glXSwapBuffers is first called subsequent to the
glXSwapIntervalMESA call.
 
A video frame period is the time required by the monitor to display a
full frame of video data. In the case of an interlaced monitor,
this is typically the time required to display both the even and odd
fields of a frame of video data.
 
If <interval> is set to a value of 0, buffer swaps are not synchro-
nized to a video frame. The <interval> value is silently clamped to
the maximum implementation-dependent value supported before being
stored.
 
The swap interval is not part of the render context state. It cannot
be pushed or popped. The current swap interval for the window
associated with the current context can be obtained by calling
glXGetSwapIntervalMESA. The default swap interval is 0.
 
On XFree86, setting the environment variable LIBGL_THROTTLE_REFRESH sets
the swap interval to 1.
 
Errors
 
glXSwapIntervalMESA returns GLX_BAD_CONTEXT if there is no current
GLXContext or if the current context is not a direct rendering context.
 
GLX Protocol
 
None. This extension only extends to direct rendering contexts.
 
New State
 
Get Value Get Command Type Initial Value
--------- ----------- ---- -------------
[swap interval] GetSwapInterval Z+ 0
 
New Implementation Dependent State
 
None
 
 
Revision History
 
1.1, 5/1/03 Added the issues section and contact information.
Changed the default swap interval to 0.
1.0, 3/17/03 Initial version based on GLX_SGI_swap_control and
WGL_EXT_swap_control.