Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
4358 Serge 1
Name
2
 
3
    MESA_swap_control
4
 
5
Name Strings
6
 
7
    GLX_MESA_swap_control
8
 
9
Contact
10
 
11
    Ian Romanick, IBM, idr at us.ibm.com
12
 
13
Status
14
 
15
    Deployed in DRI drivers post-XFree86 4.3.
16
 
17
Version
18
 
19
    Date: 5/1/2003   Revision: 1.1
20
 
21
Number
22
 
23
    ???
24
 
25
Dependencies
26
 
27
    None
28
 
29
    Based on GLX_SGI_swap_control version 1.9 and WGL_EXT_swap_control
30
    version 1.5.
31
 
32
Overview
33
 
34
    This extension allows an application to specify a minimum periodicity
35
    of color buffer swaps, measured in video frame periods.
36
 
37
Issues
38
 
39
    * Should implementations that export GLX_MESA_swap_control also export
40
      GL_EXT_swap_control for compatibility with WGL_EXT_swap_control?
41
 
42
    UNRESOLVED.
43
 
44
New Procedures and Functions
45
 
46
    int glXSwapIntervalMESA(unsigned int interval)
47
    int glXGetSwapIntervalMESA(void)
48
 
49
New Tokens
50
 
51
    None
52
 
53
Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
54
 
55
    None
56
 
57
Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
58
 
59
    None
60
 
61
Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
62
and the Framebuffer)
63
 
64
    None
65
 
66
Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
67
 
68
    None
69
 
70
Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
71
 
72
    None
73
 
74
Additions to the GLX 1.3 Specification
75
 
76
    [Add the following to Section 3.3.10 of the GLX Specification (Double
77
     Buffering)]
78
 
79
    glXSwapIntervalMESA specifies the minimum number of video frame periods
80
    per buffer swap.  (e.g. a value of two means that the color buffers
81
    will be swapped at most every other video frame.)  A return value
82
    of zero indicates success; otherwise an error occurred.  The interval
83
    takes effect when glXSwapBuffers is first called subsequent to the
84
    glXSwapIntervalMESA call.
85
 
86
    A video frame period is the time required by the monitor to display a
87
    full frame of video data.  In the case of an interlaced monitor,
88
    this is typically the time required to display both the even and odd
89
    fields of a frame of video data.
90
 
91
    If  is set to a value of 0, buffer swaps are not synchro-
92
    nized to a video frame.  The  value is silently clamped to
93
    the maximum implementation-dependent value supported before being
94
    stored.
95
 
96
    The swap interval is not part of the render context state.  It cannot
97
    be pushed or popped.  The current swap interval for the window
98
    associated with the current context can be obtained by calling
99
    glXGetSwapIntervalMESA.  The default swap interval is 0.
100
 
101
    On XFree86, setting the environment variable LIBGL_THROTTLE_REFRESH sets
102
    the swap interval to 1.
103
 
104
Errors
105
 
106
    glXSwapIntervalMESA returns GLX_BAD_CONTEXT if there is no current
107
    GLXContext or if the current context is not a direct rendering context.
108
 
109
GLX Protocol
110
 
111
    None.  This extension only extends to direct rendering contexts.
112
 
113
New State
114
 
115
    Get Value		Get Command	Type	    Initial Value
116
    ---------		-----------	----	    -------------
117
    [swap interval]	GetSwapInterval	Z+	    0
118
 
119
New Implementation Dependent State
120
 
121
    None
122
 
123
 
124
Revision History
125
 
126
    1.1,  5/1/03   Added the issues section and contact information.
127
    	  	   Changed the default swap interval to 0.
128
    1.0,  3/17/03  Initial version based on GLX_SGI_swap_control and
129
                   WGL_EXT_swap_control.