egl/x11_dri3: implement EGL_KHR_swap_buffers_with_damage
[mesa.git] / docs / relnotes / 4.0
1
2 Mesa 4.0 release notes
3
4 October 18, 2001
5
6 PLEASE READ!!!!
7
8
9
10 Introduction
11 ------------
12
13 Mesa uses an even/odd version number scheme like the Linux kernel.
14 Odd numbered versions (such as 3.3) designate new developmental releases.
15 Even numbered versions (such as 3.4) designate stable releases.
16
17 Mesa version 4.0 signifies two things:
18
19 1. A stabilization of the 3.5 development release
20 2. Implementation of the OpenGL 1.3 specification
21
22
23 Note that the Mesa major version number is incremented with the OpenGL
24 minor version number:
25
26 Mesa 1.x == OpenGL 1.0
27 Mesa 2.x == OpenGL 1.1
28 Mesa 3.x == OpenGL 1.2
29 Mesa 4.x == OpenGL 1.3
30
31
32
33 New Features
34 ------------
35
36 Mesa 3.5 already had all the new features of OpenGL 1.3, implemented as
37 extensions. These extensions were simply promoted to standard features:
38
39 GL_ARB_multisample
40 GL_ARB_multitexture
41 GL_ARB_texture_border_clamp
42 GL_ARB_texture_compression
43 GL_ARB_texture_cube_map
44 GL_ARB_texture_env_add
45 GL_ARB_texture_env_combine
46 GL_ARB_texture_env_dot3
47 GL_ARB_transpose_matrix
48
49 In Mesa 4.0 the functions defined by these extensions are now available
50 without the "ARB" suffix. For example, glLoadTransposeMatrixf() is now
51 a standard API function. The new functions in OpenGL 1.3 and Mesa 4.0 are:
52
53 glActiveTexture
54 glClientActiveTexture
55 glCompressedTexImage1D
56 glCompressedTexImage2D
57 glCompressedTexImage3D
58 glCompressedTexSubImage1D
59 glCompressedTexSubImage2D
60 glCompressedTexSubImage3D
61 glGetCompressedTexImage
62 glLoadTransposeMatrixd
63 glLoadTransposeMatrixf
64 glMultiTexCoord1d
65 glMultiTexCoord1dv
66 glMultiTexCoord1f
67 glMultiTexCoord1fv
68 glMultiTexCoord1i
69 glMultiTexCoord1iv
70 glMultiTexCoord1s
71 glMultiTexCoord1sv
72 glMultiTexCoord2d
73 glMultiTexCoord2dv
74 glMultiTexCoord2f
75 glMultiTexCoord2fv
76 glMultiTexCoord2i
77 glMultiTexCoord2iv
78 glMultiTexCoord2s
79 glMultiTexCoord2sv
80 glMultiTexCoord3d
81 glMultiTexCoord3dv
82 glMultiTexCoord3f
83 glMultiTexCoord3fv
84 glMultiTexCoord3i
85 glMultiTexCoord3iv
86 glMultiTexCoord3s
87 glMultiTexCoord3sv
88 glMultiTexCoord4d
89 glMultiTexCoord4dv
90 glMultiTexCoord4f
91 glMultiTexCoord4fv
92 glMultiTexCoord4i
93 glMultiTexCoord4iv
94 glMultiTexCoord4s
95 glMultiTexCoord4sv
96 glMultTransposeMatrixd
97 glMultTransposeMatrixf
98 glSampleCoverage
99 glSamplePass
100
101
102 GLX 1.4 is the companion to OpenGL 1.3. The only new features in GLX 1.4
103 are support for multisampling and the GLX_ARB_get_proc_address extension.
104 glXGetProcAddress() is the only new function in GLX 1.4.
105
106
107
108 Multisample and Texture Compression
109 -----------------------------------
110
111 The OpenGL 1.3 specification allows the multisample and texture compression
112 features to essentially be no-ops. For example, if you query for multisample
113 support you'll find none, but the API functions work.
114
115 Similarly, texture compression is not implemented by any of the software
116 drivers but you can specify a generic compressed texture format (like
117 GL_COMPRESSED_RGBA) to glTexImage2D and it'll be accepted.
118
119
120
121 Device Drivers
122 --------------
123
124 Mesa advertises itself as either OpenGL 1.2 or OpenGL 1.3 depending on the
125 device driver. If the driver enables all the ARB extensions which are part
126 of OpenGL 1.3 then glGetString(GL_VERSION) will return "1.3". Otherwise,
127 it'll return "1.2".
128
129 A number of Mesa's software drivers haven't been actively maintained for
130 some time. We rely on volunteers to maintain many of the drivers.
131 Here's the current status of all included drivers:
132
133
134 Driver Status
135 ---------------------- ---------------------
136 XMesa (Xlib) implements OpenGL 1.3
137 OSMesa (off-screen) implements OpenGL 1.3
138 FX (3dfx Voodoo1/2) implements OpenGL 1.3
139 SVGA implements OpenGL 1.3
140 Wind River UGL implements OpenGL 1.3
141 Windows/Win32 implements OpenGL 1.3
142 GGI needs updating
143 DOS/DJGPP needs updating
144 BeOS needs updating
145 Allegro needs updating
146 D3D needs updating
147 DOS needs updating
148
149 Special thanks go to Karl Schultz for updating the Windows driver.
150
151 The XFree86/DRI drivers have not yet been updated to use Mesa 4.0 as of
152 September 2001, but that should happen eventually.
153
154
155
156 Other Changes
157 -------------
158
159 See the VERSIONS file for more details about bug fixes, etc. in Mesa 4.0.
160
161
162 ----------------------------------------------------------------------