11 faster point and line drawing (2x faster)
12 more systems supported, better Makefiles
13 Renamed lib*.a files to avoid collisions
16 pseudo-GLX functions added
17 new implementation of evaluators (eval2.c)
20 1.1.1 beta March 7, 1995
22 Reverted from eval2.c to eval.c due to FPE on Linux
23 more speed improvements
26 1.1.2 beta March 14, 1995
28 implementation of SGI's blending extensions
29 glXUseXFont implemented
30 added MESA_DEBUG environment variable support
33 more FPE-prevention checks (0-length normals are OK)
35 much faster pixel logic ops!
36 faster transformation arithmetic
38 1.1.3 beta March 31, 1995
40 gluScaleImage() and gluBuild2DMipMaps() implemented
41 Mesa widgets for Xt/Motif
43 added environment variables for selecting visuals
45 almost all GLUT demos work correctly now
46 faster X device driver functions
49 1.1.4 beta April 20, 1995
51 - missing #define SEEK_SET in src-tk/image.c
52 - compile glShadeModel into display lists
53 - fixed pow() domain error in src/light.c
54 - fixed "flickering bitmaps" in double buffer mode
55 - fixed tk.h and aux.h for C++
56 - state of LIGHT_MODEL_LOCAL_VIEWER was inverted
58 - MUCH, MUCH nicer dithering in 8-bit RGB mode
59 - updated widgets and widget demos
60 - Implemented GLXPixmap functions
61 - Added GLU 1.1 and GLX 1.1 functions
62 - Changed the X/Mesa interface API, more versatile
63 - Implemented gluPartialDisk()
67 - IRIX 4.x makefile problem
68 - modified tk to share root colormap as needed
69 - gluLookAt normalization problem
70 - suppress Expose, NoExpose events in swapbuffers
71 - glBitmap() and glDrawPixels() clipping
73 - GL_BLEND, GL_MODULATE, GL_DECAL, and GL_REPLACE_EXT texture
75 - texture maps stored more efficiently
76 - texture maps can be compiled into display lists
77 - Bogdan Sikorski's GLU polygon tesselation code
78 - Linas Vepstas's sweep and extrusion library
79 - glXCreateContext()'s shareList parameter works as it's supposed to.
80 XMesaCreateContext() updated to accept a shareList parameter too.
81 - Mesa can be compiled with real OpenGL .h files
82 - MESA_BACK_BUFFER environment variable
83 - better GLX error checking
87 - X/Mesa double buffer window resize crash
88 - widgets now pass PointerMotion events
89 - X/Mesa incorrect default clear color and drawing color
90 - more robust X MIT-SHM support in X/Mesa
91 - glTexImage( format=GL_LUMINANCE ) didn't work
92 - GL_LINE mode polygons with line width > 1.0 could cause a crash
93 - numerous feedback bugs
94 - glReadPixels() from depth buffer was wrong
95 - error prone depth and stencil buffer allocation
97 - Preliminary Microsoft Windows driver
98 - Implemented a number of missing functions: glEvalCoord[12][df]v(),
100 - Added a few missing symbols to gl.h and glu.h
101 - Faster rendering of smooth-shaded, RGBA, depth-buffered polygons.
102 - Faster rendering of lines when width=2.0
103 - Stencil-related functions now work in display lists
105 - renamed aux.h as glaux.h (MS-DOS names can't start with aux)
106 - most filenames are in 8.3 format to accomodate MS-DOS
107 - use GLubytes to store arrays of colors instead of GLints
111 - texture mapped points and lines
112 - NURBS! (but not 100% complete)
113 - viewports may safely extend beyond window boundaries
114 - MESA_PRIVATE_CMAP environment variable
115 - Grayscale X display support
116 - two new demos: demos/gears.c and demos/shadow.c
117 - MachTen for Macintosh configuration
119 - glGet*(GL_DEPTH_BITS) returned bytes, not bits
120 - point, line, and bitmap rasterization suffered from roundoff errors
121 - fixed a division by zero error in line clippping
122 - occasional wrong default background color really fixed!
123 - glDepthFunc(GL_ALWAYS) with glDepthMask(GL_FALSE) didn't work
124 - gluBuild2DMipmaps malloc problem fixed
125 - view volume clipping of smooth shaded lines resulted in bad colors
127 - new visual selection method in glXChooseVisual()
128 - improved GLU quadric functions
129 - call XSync for glFinish and XFlush for glFlush
130 - glVertex() calls now use a function pointer to avoid conditionals
131 - removed contrib directory from Mesa tar file (available on ftp site)
132 - AIX shared library support
133 - Removed GLUenum type as it's not in OpenGL
135 1.2.3 September 26, 1995
137 - Mesa header files now equivalent to SGI OpenGL headers
138 - Support for HP's Color Recovery dithering displays
139 - Faster vertex transformation
140 - Faster raster operations into X windows under certain conditions
141 - New configurations: HP w/ shared libs, Ultrix w/ GCC, Data General
142 - 4-bit visuals now supported
144 - glScissor bug fixed
145 - round-off errors in clipping lines against clip planes fixed
146 - byte swapping between hosts and display servers implemented
147 - glGetError() can be called without a current rendering context
148 - problem with accidentally culled polygons is fixed
149 - fixed some widget compilation problems
151 1.2.4 November 17, 1995
153 - More speed improvements (lighting, fogging, polygon drawing)
154 - Window system and OS-independent off-screen rendering
155 - Preliminary Fortran bindings
156 - glPolygonOffsetEXT implemented
157 - glColorMask and glIndexMask now fully implemented
158 - glPixelZoom implemented
159 - display lists fully implemented
161 - dithering in 8-bit TrueColor/DirectColor visuals
163 - Improved device driver interface
164 - tk.h renamed to gltk.h to avoid conflicts with Tcl's Tk
165 - Dithering support moved from core into device driver
167 - glEnable/Disable( GL_LIGHTING ) didn't always take effect
168 - glReadPixels byte swapping was broken
169 - glMaterial with pname==GL_AMBIENT_AND_DIFFUSE was broken
170 - duplicate glColor4b() prototype in GL/gl.h removed
171 - stripes in wave -ci demo fixed
172 - GL_LINEAR_MIPMAP_NEAREST had wrong value
173 - bugs in HP Color Recovery support fixed
174 - fixed bug when blending lines, points, bitmaps outside of window
176 1.2.5 November 30, 1995
178 - updated MS Windows driver
179 - new implementation of StaticGray/GrayScale visual support
181 - pixelzooming with gamma correction or blending didn't work
182 - HP color recovery visual wasn't being picked by glXChooseVisual
183 - glClear didn't always observe glColorMask changes
184 - olympic and offset demos didn't compile on some Suns
185 - texcoord clamping wasn't correct
186 - a polygon optimization introduced an occasional sampling problem
188 1.2.6 January 26, 1996
190 - faster line and polygon rendering under certain conditions. See
191 Performance Tips 9 and 10 in README
193 - lighting is a bit faster
194 - better perspective corrected texture mapping
195 - Amiga AmiWin (X11) support
196 - preliminary Linux SVGA driver
198 - now using a 16-bit depth buffer, faster, smaller
199 - GL_NORMALIZE is disabled by default
201 - projective texture mapping
202 - fixed a memory leak in the context destroy function
203 - GL_POLYGON with less than 3 vertices caused a crash
204 - glGet*() returned wrong result for GL_INDEX_MODE
205 - reading pixels from an unmapped X window caused a BadMatch error
210 - faster 16-bit TrueColor rendering on Linux
211 - faster 32-bit TrueColor rendering on Linux, HP, IBM
212 - non-depth-buffered XImage polygons are faster
213 - vertex array extension
214 - software alpha planes
215 - updated Macintosh driver
217 - GLU quadric functions generate texture coordinates
218 - reflect.c demo - reflective, textured surface demo
220 - gamma correction code moved into the X driver for better performance
222 - multiple glClipPlane()'s didn't work reliably
223 - glPolygonMode() didn't always work
224 - glCullFace( GL_FRONT_AND_BACK ) didn't work
225 - texture mapping with gamma correction was buggy
226 - floating point exceptions in texture coordinate interpolation
227 - XImage byte swapping didn't always work
228 - polygon edge flags weren't always used correctly
232 - overlay planes on X servers with the SERVER_OVERLAY_VISUALS property
233 - better monochrome output
234 - more IRIX 6.x configurations
235 - more robust RGB mode color allocation
236 - added MESA_XSYNC environment variable
237 - GLX_MESA_pixmap_colormap and GLX_EXT_visual_info extensions
238 - GL_MESA_window_pos extension
239 - faster glReadPixels/glDrawPixels for GL_DEPTH and GL_UNSIGNED_SHORT
241 - driver for prototype Cirrus Mondello 3-D board
242 - updated AmigaDOS driver
243 - a few small speed optimizations in polygon rendering
245 - internal device driver interface modified to simplify device
246 driver implementations and to support hardware Z buffers
247 - several changes to the X/Mesa interface (xmesa.h)
249 - fixed pow(0,0) domain error triggered on some systems
250 - glStencilClear() in a display list caused an infinite loop
251 - glRasterPos*() was sometimes off by +/-0.5 in X and Y
252 - color masking and blending were performed in wrong order
253 - auxSolidCylinder() sometimes drew a wire-frame cylinder
254 - fixed file writing bug in osdemo.c
255 - pixel mapping didn't always work
256 - the GL_GEQUAL stencil func didn't work
257 - the GL_INVERT stencil op didn't work
258 - the stencil write mask didn't work
259 - glPush/PopAttrib() didn't do enough error checking
260 - glIsList() didn't always work correctly
264 - Implements OpenGL 1.1 API functions
265 - all texture filtering modes supported (mipmapping)
266 - faster texture mapping, see Performance Tip 11 in README
267 - antialiased RGB points
268 - X support for line and polygon stippling
269 - glDrawBuffer( GL_FRONT_AND_BACK ) works
270 - util/ directory of useful stuff
271 - demos/texobj demo of texture objects
273 - major internal changes for thread-safeness
274 - new device driver interface
275 - MESA_ALPHA env variable removed
276 - triangle rasterizer replaces polygon rasterizer
279 - glDrawBuffer(GL_NONE) works now
281 2.1 December 14, 1996
286 - updated, combined Windows 95/NT driver
287 - implemented glGetLighti() and glGetTexGen*()
288 - GLX does garbage collection of ancillary buffers
290 - removed unused _EXT constants from gl.h
291 - fixed polygon offset bugs
292 - Z coordinates of clipped lines were incorrect
293 - glEdgeFlag() in display lists didn't always work
294 - glLight*() in display lists didn't work
295 - fixed X line stipple bugs (Michael Pichler)
296 - glXUseXfonts XFreeFont/XFreeFontInfo bug fixed
297 - fixed a feedback bug
298 - glTexGen*() now transforms GL_EYE_PLANE by inverse modelview matrix
299 - polygons were sometimes culled instead of clipped
300 - triangle rasterizer suffered from float/int overflow exceptions
301 - fixed FP underflow exception in lighting (specular exponent)
302 - glEnable/glDisable of GL_EXT_vertex_array enums didn't work
303 - fixed free(NULL) in GLU tesselator code
304 - using 24-bit color on some X servers resulted in garbage rendering
305 - 32-bit per pixel mode for XFree86 now works
306 - glRotate(a,0,0,0) gave unpredictable results
307 - GL_LINE_STRIP with > 480 vertices had occasional clipping problems
308 - 8-bit TrueColor GLXPixmap rendering incorrectly required a colormap
309 - glMaterial() wasn't ignored when GL_COLOR_MATERIAL was enabled
310 - glEnable(GL_COLOR_MATERIAL) followed by glColor() didn't work right
311 - accumulation buffer was limited to positive values
312 - projective textures didn't work
313 - selection buffer overflows weren't handled correctly
315 - restored the GL_EXT_polygon_offset extension
316 - slightly faster RGB dithering
317 - the SVGA driver works again
318 - Amiga driver now distributed separately
319 - NeXT driver updated for Mesa 2.x
323 - better color selection when dithering
324 - added GL_EXT_texture_object extension
325 - updated MS-DOS driver for DJGPP
326 - added openbsd make configuration
327 - faster dithered flat-shaded triangles
328 - various compilation problems with Motif widgets fixed
329 - gl.h, glx.h and glu.h name mangling option
331 - 3D texture mapping extension
332 - GL_MESA_resize_buffers extension
333 - morph3d, stex3d and spectex demos
336 - glColorMaterial should finally work right in all respects
337 - linear interpolation of mipmap levels was incorrectly weighted
338 - readpix.c didn't compile on Macintosh
339 - GL_INVERT and related logic ops didn't work right
340 - glTexImage[12]D() didn't check its parameters consistantly
341 - fixed a memory leak in glTexImage[12]D()
342 - kludged around a SunOS 5.x/GCC compiler bug in the feedback code
343 - glReadPixels aborted instead of normally catching some errors
344 - a few 1.1 constants were missing or misnamed in gl.h
345 - glBegin(p); glBegin(q); didn't generate an error
346 - fixed a memory leak in GLX code
347 - clipping of concave polygons could cause a core dump
348 - 1-component alpha texture maps didn't work
349 - fixed a GLU polygon tesselator bug
350 - polygons with colinear vertices were sometimes culled
351 - feedback triangle colors were wrong when using smooth shading
352 - textures with borders didn't work correctly
353 - colors returned in feedback mode were wrong when using lighting
354 - spotlights didn't effect ambient lighting correctly
355 - gluPartialDisk() had a few bugs
357 - device driver interface expanded to support texture mapping
358 - faster matrix inversion subroutine
359 - commented out #include "wmesa_extend.h" from src/wmesa.c
360 - fixed many compiler warnings in the demo programs
364 - Mesa distribution divided into two pieces: library code and demos
365 - faster vertex transformation, clip testing, lighting
366 - faster line drawing
367 - TrueColor visuals how have dithering (for depths < 24 bits)
368 - added MESA_NO_DITHER environment variable
369 - new device driver function: NearFar(), RenderVB(), RasterSetup()
370 - added LynxOS configuration
371 - added cygnus Win32 configuration
372 - added texcyl.c GLUT demo
373 - added XMesaDitherColor() to X/Mesa interface
374 - new NURBS code from Bogdan Sikorski
375 - added demos/shape.c (non-rectangular X window!)
377 - glEnable/DisableClientState() were missing from GL/gl.h
378 - GL_SPHERE_MAP texcoord generation didn't work correctly
379 - glXGetConfig() returned wrong number of depth, stencil, accum bits
380 - glDrawPixels feedback/selection didn't examine RasterPos valid bit
381 - black and white were reversed on some monochrome displays
382 - fixed potential image memory leak (wasn't setting reference counter)
383 - glDrawPixels sometimes didn't recognize some GL state changes
384 - gluProject/UnProject() didn't check for divide by zero
385 - stex3d demo called random() and srandom(), not portable
386 - fixed memory leaks in context.c and drawpix.c
387 - fixed NULL dereferencing problem in gl_update_texture_state()
388 - glReadPixels between glBegin/glEnd didn't generate an error.
389 - fixed memory leak in polygon tesselator (Randy Frank)
390 - fixed seg fault bug drawing flat-shaded, depth-tested lines
391 - clipped GL_TRIANGLE_STRIPs sometimes had wrong color when flat-shaded
392 - glBindTexture sometimes didn't work
393 - fixed a bug deep in glXReleaseBuffersMESA()
394 - fog was mistakenly applied to alpha
395 - glPopMatrix didn't set "dirty matrix" flag
396 - glPolygonStipple pattern was sometimes wrong
397 - glClear wasn't disabled during feedback and selection
398 - fixed memory leak in glTexSubImage[123]D
400 - many library source files reorganized
401 - faster X color allocation, colors also freed when finished with them
402 - new texture sampling function pointer in texture objects
403 - incorporated 3Dfx VooDoo driver v0.16 into main source tree
404 - many 3Dfx driver updates
405 - cygnus Makefiles now included
407 - made a few changes to dosmesa.c and wmesa.c (VB->Unclipped)
408 - internally, colors now stored in GLubytes, not GLfixed
409 - optimized changing of GL_SHININESS parameter
411 2.4 September 18, 1997
413 - updated 3Dfx Glide driver
414 - hacks for 3Dfx rendering into an X window or fullscreen
415 - added depth buffer access functions to X/Mesa and OS/Mesa interfaces
417 - pixel buffer could overflow with long, wide lines
418 - fixed FP underflow problems in lighting
419 - glTexSubImage1D() had an unitialized variable
420 - incomplete texture objects could cause a segfault
421 - glDrawPixels with GL_COMPILE_AND_EXECUTE caused infinite loop
422 - flat-shaded quads in a strip were miscolored if clipped
423 - mipmapped triangle lod computation now works correctly
424 - fixed a few under/overflow bugs in triangle rasterizer
425 - glArrayElement() assigned bad normal if normal array disabled
426 - changed argument to glXReleaseBuffersMESA()
427 - fixed small triangle underflow bugs in tritemp.h (hopefully)
428 - glBindTexture(target, 0) caused a crash
429 - glTexImage[123]D() with NULL image pointer caused crash
430 - glPixelStore parameters are now ignored during display list execution
431 - fixed a two-sided lighting w/ clipping bug (black vertices)
432 - textures with width!=height were sometimes mis-rendered
433 - "weird" projection matrices could cause div by 0, other fp errors
435 - changed precompiled header symbol from PCH to PC_HEADER
436 - split api.c into api1.c and api2.c
437 - added hash.c source file (but not used yet)
438 - a few Sun and HP configuration file changes
439 - MESA_GLX_FX env var replaces MESA_FX_WINDOW and MESA_FX_FULLSCREEN
440 - fixed a few cygnus build problems (src/Makefile.cygnus, src/wmesa.c)
442 2.5 November 20, 1997
444 - updated 3Dfx driver (v20) for GLQuake
445 - added GL_EXT_paletted_texture extension
446 - added GL_EXT_shared_texture_palette extension
447 - added GL_EXT_point_parameters extension
448 - now including Mark Kilgard's GLUT library v3.6
449 - new GLUT-based demos in gdemos/
450 - added a few more Unix config targets
451 - added Intel X86 assembly language vertex transformation code
452 - 3Dfx/Glide driver for Mesa now recognizes SST_SCREENREFRESH env var
453 - Windows 95 S3 Virge driver
455 - glCopyTexImage?D would crash due to uninitialized variable
456 - glColor w/ glColorMaterial in a display list caused a bug
457 - fixed several glDrawPixels() and ReadPixels() bugs in 3Dfx driver
458 - glVertex4*() vertices weren't always projected correctly
459 - trying to use mipmapped textured points or lines caused crash
460 - glColor[34][fd]() values now clamped to [0,1] before int conversion
462 - new device driver functions for texture mapping
463 - hash tables used for display list and texture object lookup
464 - fixed GLX visual handling code to avoid saving redundant visuals
465 - 3Dfx Glide libraries automatically linked to libMesaGL.so
466 - dropped the Cirrus Logic Mondello code since it's obsolete
467 - updated Cygnus Makefiles (Stephane Rehel)
468 - updated Windows MSVC++ Makefiles (Oleg Letsinsky)
469 - procedure for making library files has changed: scripts now take
470 a major and minor version arguments. Make-config changed a lot.
471 - new implementation of glTexSubImage2D()
472 - updated widgets-mesa directory to create libMesaGLwM.a (Motif widget)
473 - separate linux-glide and linux-386-glide configurations
475 2.6 February 12, 1998
477 - Windows WGL functions
478 - updated VMS, DOS, Windows, Cygnus, BeOS, Amiga compilation support
479 - v0.22 of 3Dfx Glide driver
480 - more X86 assembly language optimizations
481 - faster blending for some modes
482 - XMesaSetFXmode() to switch between 3Dfx window and full-screen mode
483 - added preliminary thread support
484 - added GLX_MESA_copy_sub_buffer extension
485 - some clipping optimizations
487 - fixed shading/material bug when drawing long primitive strips
488 - fixed clipping problem in long primitive strips
489 - fixed clipping bug when using 3Dfx driver
490 - fixed a problem when trying to use X fonts w/ 3Dfx driver
491 - fixed a texture filter bug in 3Dfx/Glide driver
492 - fixed bug in 3Dfx/Glide driver involving depth mask & clearing
493 - glLoadMatrix to set projection matrix confused the 3Dfx driver
494 - non-identity texture matrices didn't work with linux-386 configs
495 - glGenTextures() didn't reserve the returned texture IDs
496 - NULL proxy image sent to glTexImageXD() caused crash
497 - added texture state validation optimization (Henk Kok)
498 - fixed colormap reuse problem when using both RGB and CI windows
499 - 32bpp True/DirectColor X visuals weren't recognized
500 - fixed potential problem in evaluators memory allocation
501 - fixed assorted demo compilation bugs
503 - replaced old Mesa/windows/ directory with Mesa/WIN32/ directory
504 - converted a few old glaux/gltk demos to GLUT
505 - renamed directories: demos -> xdemos, gdemos -> demos
508 3.0 September 17, 1998
511 - GL_EXT_abgr pixel format extension
512 - GL_SGIS_texture_edge_clamp extension
513 - GL_SGIS_multitexture extension (to be replaced by GL_ARB_multitex)
514 - GL_EXT_multitexture extension (to be replaced by GL_ARB_multitex)
515 - GL_EXT_rescale_normal extension and renormal.c demo
516 - GLX_SGI_video_sync extension (a no-op)
518 - glGetTexImage() now implemented
519 - glDraw/Copy/ReadPixels() optimizations
520 - optimized textured triangle code (Marten Stromberg)
521 - more optimization of dithered TrueColor triangles in X driver
525 - lots of assorted compilation fixes
526 - glInitNames didn't write initial hit record
527 - glBitmap didn't always check for invalid raster position
528 - switching between GLX and OSMesa contexts caused a crash
529 - fixed uninitialized variable in Mesa widget code
530 - fixed typo in texture code which caused book/texgen to crash
531 - fixed texture sampling bug when filter=GL_LINEAR and wrap=GL_CLAMP
532 - gluDisk() in POINT or LINE mode sometimes failed
533 - fixed texture + fog bug
534 - GL_COMPILE_AND_EXECUTE mode didn't work reliably
535 - glMultMatrix in projection matrix mode w/ 3Dfx driver could fail
536 - glDrawPixels(color index pixels) weren't converted to RGBA
537 - fixed possible getenv() buffer overflow security bug
538 - glBitmap in feedback mode was offset by xOrig, yOrig params
539 - device driver's DrawPixels hook was never used
540 - glDrawPixels with zoomY!=1 and top/bottom clipping didn't work
541 - glDrawPixels optimized for GL_LUMINANCE, GL_LUMINANCE_ALPHA, GLubyte
542 - fixed MakeCurrent bug in GLwRedrawObjects() in MesaWorkstation.c
543 - glCopyTexSubImage2D() didn't work with 3Dfx driver
544 - lines with width = 2 could cause crash
545 - glClear with scissor rect sometimes cleared whole buffer
546 - glTexSubImage2D( .. GL_COLOR_INDEX .. ) didn't work
547 - glTexImageXD( .. GL_ABGR_EXT .. ) didn't work
548 - computation of inverse modelview matrix sometimes failed
549 - fixed GL_CLAMP mode texture sampling bug
550 - textured line interpolation was somewhat broken
551 - textured triangle interpolation was also somewhat broken
552 - glGet(MODELVIEW/PROJECTION/TEXTURE_MATRIX_STACK_DEPTH) off by one
553 - evaluator state wasn't fully initialized
554 - texture coordinate clipping was buggy
555 - evaluator surfaces could be mis-colored
556 - glAccum(GL_RETURN, s) didn't obey glColorMask() settings
557 - zero area polygons shouldn't be culled if polygon mode is point/line
558 - clipped width and height of glReadPixels was sometimes off by one
559 - blending with alpha = 0 or 1.0 wasn't always exact
560 - reading of pixels from clipped region was buggy
561 - minor tweaking of X visual management in GLX emulator
562 - glPolygonStipple now obeys pixel unpacking parameters
563 - glGetPolygonStipple now obeys pixel packing parameters
564 - interleaved vertex array texture coordinates were broken
565 - query of proxy texture internal format was broken
566 - alpha channel wasn't reliably cleared
567 - fixed divide by zero error in gluScaleImage if dest size = 1 x 1
568 Conformance bug fixes:
569 - GL_SELECTION_BUFFER_POINTER and GL_SELECTION_BUFFER_SIZE were missing
570 - GL_TEXTURE_INTERNAL_FORMAT was missing
571 - glGet*(GL_POLYGON_STIPPLE) was broken
572 - glPush/PopAttrib() didn't save/restore all texture state
573 - glBitmap in feedback mode didn't work
574 - feedback of texture coords didn't always work
575 - glDrawPixels w/ format=GL_DEPTH_COMPONENT, type=GLbyte was broke
576 - glDrawPixels w/ format=GL_DEPTH_COMPONENT, type=GLubyte was broke
577 - glDrawPixels w/ format=GL_STENCIL_INDEX, type=GL_BITMAP was broke
579 - upgraded GLUT to version 3.7
580 - only GL and GLU library code included in MesaLib.tar.gz
581 - GLUT and all demos now in MesaDemos.tar.gz
582 - glaux and gltk libraries removed
583 - IRIX -n32 and -64 libs go in lib32/ and lib64/ directories
586 3.1 beta 1 November 19, 1998
588 - GL_EXT_stencil_wrap extension
589 - GL_INGR_blend_func_separate extension
590 - GL_ARB_multitexture extension
591 - GL_NV_texgen_reflection extension
592 - newly optimized vertex transformation code
593 - updated GLUT 3.7 code
594 - better precision when using 32-bit Z buffer
595 - Allegro DJGPP driver
597 - glCopyPixels between front/back buffers didn't copy alpha correctly
598 - fixed out-of-bounds memory access in optimized 2-D texture code
599 - glPixelStorei didn't accept GL_PACK/UNPACK_IMAGE_HEIGHT parameter
600 - glGet*() didn't accept GL_MAX_3D_TEXTURE_SIZE parameter
601 - clipping of texture coordinates sometimes had bad R,Q values
602 - GL_CLAMP_TO_EDGE texture sampling was off by 0.5 texels
603 - glEdgeFlagPointer() now takes a GLvoid * instead of GLboolean *
604 - texture was sometimes applied twice with 3Dfx driver
605 - glPush/PopAttrib() fouled up texture object reference counts
606 - glDeleteLists(0, n) caused assertion failure
607 - bilinear texture sampling wasn't accurate enough
608 - glClear w/ glDepthMask(GL_FALSE) didn't work right on 3Dfx
609 - color components were reversed on big endian 32 bpp X visuals
611 - removed GL_EXT_multitexture extension
614 3.1 beta 2 May 24, 1999
616 - multi-textured points and lines (mjk@nvidia.com)
617 - optimized 24bpp X rendering (bernd.paysan@gmx.de)
618 - added allegro support (bernie-t@geocities.com)
619 - cleaned-up Windows-related stuff (Ted Jump)
620 - minor stereo changes (KendallB@scitechsoft.com)
621 - new BeOS driver which implements BGLView class
622 - new Direct3D driver (see src/D3D)
623 - more efficient filled gluCylinder() function
624 - utilities: util/showbuffer.[ch] and util/glstate.[ch]
625 - fixed some IRIX compiler warnings
626 - added support for building Mesa in XFree86 with
627 SGI's GLX (kevin@precisioninsight.com)
629 - a variety of Windows/Mesa bug fixes (mjk@nvidia.com)
630 - packed pixel images weren't unpacked correctly
631 - patches some win32 files in GLUT (mjk@nvidia.com)
632 - glTexImage[123]D() didn't accept internalFormat == GL_COLOR_INDEX
633 - fixed lighting bug in Keith's new shading code
634 - fixed texture segfault seen in Lament screensaver
635 - fixed miscellaneous low-memory bugs
636 - glClear(GL_COLOR_BUFFER_BIT) with RGBA or CI masking was broken
637 - GL_LINEAR sampling of 3D textures was broken
638 - fixed SVR4 'cc' compiler macro problem (dawes@xfree86.org)
639 - added GL_TEXTURE_PRIORITY fix (keithh@netcomuk.co.uk)
640 - fixed wide point and wide line conformance bugs (brianp)
642 - some device driver changes (see src/dd.h)
643 - new copyright on core Mesa code
646 3.1 beta 3 September 17, 1999
648 - optimized glAccum function
649 - optimized 24bpp rendering in XMesa driver
650 - GLU 1.2 polygon tessellator
652 - glGetTexLevelParameter wasn't fully implemented
653 - glXUseXFont now handles multi-byte fonts
654 - glIsEnabled(GL_TEXTURE_2D / 3D) returned wrong result
655 - alpha channel of blending points, lines was sometimes incorrect
657 - New library names: "libGL" instead of "libMesaGL"
658 - New library numbering: libGL.so.1.2.310
659 - New subdirectories: docs/ and bin/
660 - New Makefile-system (autoconf,automake,libtool)
663 3.1 final December 14, 1999
665 - added demos/gloss.c
666 - added xdemos/glxdpyinfo.c
667 - added GLX_ARB_get_proc_address extension
668 - rewritten glTexImage code paths (faster, less memory, bug fixes)
670 - several vertex array bug fixes
671 - overlapping glCopyPixels with pixel zooming now works
672 - glXUseXFont() bitmaps were vertically shifted by one pixel
673 - glCopyPixels with pixel zooming now works
676 3.2 final April 24, 2000
678 - fixed memcpy bugs in span.c
679 - fixed missing glEnd problem in demos/tessdemo.c
680 - fixed bug when clearing 24bpp Ximages
681 - fixed clipping problem found in Unreal Tournament
682 - fixed Loki's "ice bug" and "crazy triangles" seen in Heretic2
683 - fixed Loki's 3dfx RGB vs BGR bug
684 - fixed Loki's 3dfx smooth/flat shading bug in SoF
686 - updated docs/README file
687 - use bcopy() optimizations on FreeBSD
688 - re-enabled the optimized persp_textured_triangle() function
693 - gluBuild2DMipmaps() didn't accept GL_BGRA
694 - Fixed compile/makefile problems on IRIX
695 - fixed segfault in 3dfx driver when using GL selection/feedback
696 - no longer cull very, very tiny triangles
697 - blending w/ drawbuffer==GL_FRONT_BACK caused segfault (sw rendering)
698 - fixed Motif detection code in widgets-mesa/configure.in
699 - glColorMaterial and glMaterial updates to emissive and ambient
700 didn't always work right
701 - Specular highlights weren't always in the right place
702 - clipped GL_LINE mode polygons had interior lines appear
703 - blend term GL_ONE_MINUS_CONSTANT_ALPHA was broken
704 - GL_NICEST fog didn't always work with flat shading
705 - glRect commands in display lists were sometimes miscolored
706 - Line Z offset didn't always work
707 - fixed texgen normal vector problem (gloss's teapot)
708 - numerous GL conformance bugs fixed
710 - glColorMask(false, false, false, false) handled better/faster
711 - reverted to old GLU polygon tessellator, GLU 1.1
712 - updated Win32 build files
717 - antialiased triangles now implemented
718 - GL_EXT_texture_env_add texture mode extension
720 - support for separate draw/read buffers (ie GL_SGI_make_current_read)
721 - thread-safe API dispath
722 - improved glxinfo program
723 - demos/texdown program to measure texture download performance
724 - glext.h header file
725 - demos/geartrain program
726 - GL_EXT_texture_lod_bias extension
727 - demos/lodbias program
728 - further optimized glRead/DrawPixels for 16-bit TrueColor X visuals
729 - GLX_EXT_visual_rating extension (a no-op, however)
730 - GL_HP_occlusion_test extension (for X and OS/Mesa drivers)
731 - demos/occlude program
732 - GL_SGIS_pixel_texture and GL_SGIX_pixel_texture extensions
733 - demos/pixeltex program
734 - GL_SGI_color_matrix extension
735 - GL_SGI_color_table extension
736 - GL_EXT_histogram extension
737 - GL_ARB_texture_cube_map extension
738 - added xdemos/glxheads and xdemos/manywin
739 - demos/texenv.c demo
740 - GL_EXT_texture_env_combine extension (by Holger Waechtler)
741 - Xlib driver is now thread-safe (see xdemos/glthreads)
743 - various GL conformance failures fixed since 3.2.1
745 - gl.h now uses #defines instead of C enums for all tokens
746 - glu.h now uses #defines instead of C enums for all tokens
747 - moved programs from 3Dfx/demos/ into demos/ directory
752 - optimized glDrawPixels for glPixelZoom(1,-1)
754 - widgets-mesa/src/*.c files were missing from 3.3 distro
755 - include/GL/mesa_wgl.h file was missing from 3.3 distro
756 - fixed some Win32 compile problems
757 - texture object priorities weren't getting initialized to 1.0
758 - glAreTexturesResident return value was wrong when using hardware
759 - glXUseXFont segfaulted when using 3dfx driver (via MESA_GLX_FX)
760 - glReadPixels with GLushort packed types was broken
761 - fixed a few bugs in the GL_EXT_texture_env_combine texture code
762 - glPush/PopAttrib(GL_ENABLE_BIT) mishandled multi-texture enables
763 - fixed some typos/bugs in the VB code
764 - glDrawPixels(GL_COLOR_INDEX) to RGB window didn't work
765 - optimized glDrawPixels paths weren't being used
766 - per-fragment fog calculation didn't work without a Z buffer
767 - improved blending accuracy, fixes Glean blendFunc test failures
768 - glPixelStore(GL_PACK/UNPACK_SKIP_IMAGES) wasn't handled correctly
769 - glXGetProcAddressARB() didn't always return the right address
770 - gluBuild[12]DMipmaps() didn't grok the GL_BGR pixel format
771 - texture matrix changes weren't always detected (GLUT projtex demo)
772 - fixed random color problem in vertex fog code
773 - fixed Glide-related bug that let Quake get a 24-bit Z buffer
775 - finished internal support for compressed textures for DRI
778 3.4.1 February 14, 2001
780 - fixed some Linux build problems
781 - fixed some Windows build problems
782 - GL_EXT_texture_env_dot3 extension (Gareth Hughes)
784 - added RENDER_START/RENDER_FINISH macros for glCopyTexImage in DRI
785 - various state-update code changes needed for DRI bugs
786 - disabled pixel transfer ops in glColorTable commands, not needed
787 - fixed bugs in glCopyConvolutionFilter1D/2D, glGetConvolutionFilter
788 - updated sources and fixed compile problems in widgets-mesa/
789 - GLX_PBUFFER enum value was wrong in glx.h
790 - fixed a glColorMaterial lighting bug
791 - fixed bad args to Read/WriteStencilSpan in h/w stencil clear function
792 - glXCopySubBufferMESA() Y position was off by one
793 - Error checking of glTexSubImage3D() was broken (bug 128775)
794 - glPopAttrib() didn't restore all derived Mesa state correctly
795 - Better glReadPixels accuracy for 16bpp color - fixes lots of OpenGL
796 conformance problems at 16bpp.
797 - clearing depth buffer with scissoring was broken, would segfault
798 - OSMesaGetDepthBuffer() returned bad bytesPerValue value
799 - fixed a line clipping bug (reported by Craig McDaniel)
800 - fixed RGB color over/underflow bug for very tiny triangles
802 - NURBS or evaluator surfaces inside display lists don't always work
807 - deleting the currently bound texture could cause bad problems
808 - using fog could result in random vertex alpha values
809 - AA triangle rendering could touch pixels outside right window bound
810 - fixed byteswapping problem in clear_32bit_ximage() function
811 - fixed bugs in wglUseFontBitmapsA(), by Frank Warmerdam
812 - fixed memory leak in glXUseXFont()
813 - fragment sampling in AA triangle function was off by 1/2 pixel
814 - Windows: reading pixels from framebuffer didn't always work
815 - glConvolutionFilter2D could segfault or cause FP exception
816 - fixed segfaults in FX and X drivers when using tex unit 1 but not 0
817 - GL_NAND logicop didn't work right in RGBA mode
818 - fixed a memory corruption bug in vertex buffer reset code
819 - clearing the softwara alpha buffer with scissoring was broken
820 - fixed a few color index mode fog bugs
821 - fixed some bad assertions in color index mode
822 - fixed FX line 'stipple' bug #420091
823 - fixed stencil buffer clear width/height typo
824 - fixed GL error glitches in gl[Client]ActiveTextureARB()
825 - fixed Windows compilation problem in texutil.c
826 - fixed 1/8-pixel AA triangle sampling error
828 - optimized writing mono-colored pixel spans to X pixmaps
829 - increased max viewport size to 2048 x 2048
834 - internals of Mesa divided into modular pieces (Keith Whitwell)
835 - 100% OpenGL 1.2 conformance (passes all conformance tests)
836 - new AA line algorithm
837 - GL_EXT_convolution extension
838 - GL_ARB_imaging subset
839 - OSMesaCreateContextExt() function
840 - GL_ARB_texture_env_add extension (same as GL_EXT_texture_env_add)
841 - GL_MAX_TEXTURE_UNITS_ARB now defaults to eight
842 - GL_EXT_fog_coord extension (Keith Whitwell)
843 - GL_EXT_secondary_color extension (Keith Whitwell)
844 - GL_ARB_texture_env_add extension (same as GL_EXT_texture_env_add)
845 - GL_SGIX_depth_texture extension
846 - GL_SGIX_shadow and GL_SGIX_shadow_ambient extensions
847 - demos/shadowtex.c demo of GL_SGIX_depth_texture and GL_SGIX_shadow
848 - GL_ARB_texture_env_combine extension
849 - GL_ARB_texture_env_dot3 extension
850 - GL_ARB_texture_border_clamp (aka GL_SGIS_texture_border_clamp)
851 - OSMesaCreateContextExt() function
852 - libOSMesa.so library, contains the OSMesa driver interface
853 - GL/glxext.h header file for GLX extensions
854 - somewhat faster software texturing, fogging, depth testing
855 - all color-index conformance tests now pass (only 8bpp tested)
856 - SPARC assembly language TCL optimizations (David Miller)
857 - GL_SGIS_generate_mipmap extension
859 - fbiRev and tmuRev were unitialized when using Glide3
860 - fixed a few color index mode conformance failures; all pass now
861 - now appling antialiasing coverage to alpha after texturing
862 - colors weren't getting clamped to [0,1] before color table lookup
863 - fixed RISC alignment errors caused by COPY_4UBV macro
864 - drawing wide, flat-shaded lines could cause a segfault
865 - vertices now snapped to 1/16 pixel to fix rendering of tiny triangles
867 - SGI's Sample Implementation (SI) 1.3 GLU library replaces Mesa GLU
868 - new libOSMesa.so library, contains the OSMesa driver interface
873 - Mesa 4.0 implements the OpenGL 1.3 specification
874 - GL_IBM_rasterpos_clip extension
875 - GL_EXT_texture_edge_clamp extension (aka GL_SGIS_texture_edge_clamp)
876 - GL_ARB_texture_mirrored_repeat extension
877 - WindML UGL driver (Stephane Raimbault)
878 - added OSMESA_MAX_WIDTH/HEIGHT queries
879 - attempted compiliation fixes for Solaris 5, 7 and 8
880 - updated glext.h and glxext.h files
881 - updated Windows driver (Karl Schultz)
883 - added some missing GLX 1.3 tokens to include/GL/glx.h
884 - GL_COLOR_MATRIX changes weren't recognized by teximage functions
885 - glCopyPixels with scale and bias was broken
886 - glRasterPos with lighting could segfault
887 - glDeleteTextures could leave a dangling pointer
888 - Proxy textures for cube maps didn't work
889 - fixed a number of 16-bit color channel bugs
890 - fixed a few minor memory leaks
891 - GLX context sharing was broken in 3.5
892 - fixed state-update bugs in glPopClientAttrib()
893 - fixed glDrawRangeElements() bug
894 - fixed a glPush/PopAttrib() bug related to texture binding
895 - flat-shaded, textured lines were broken
896 - fixed a dangling pointer problem in the XMesa code (Chris Burghart)
897 - lighting didn't always produce the correct alpha value
898 - fixed 3DNow! code to not read past end of arrays (Andrew Lewycky)
901 4.0.1 December 17, 2001
903 - better sub-pixel sample positions for AA triangles (Ray Tice)
904 - slightly faster blending for (GL_ZERO, GL_ONE) and (GL_ONE, GL_ZERO)
906 - added missing break statements in glGet*() for multisample cases
907 - fixed uninitialized hash table mutex bug (display lists / texobjs)
908 - fixed bad teximage error check conditional (bug 476846)
909 - fixed demos readtex.c compilation problem on Windows (Karl Schultz)
910 - added missing glGet() query for GL_MAX_TEXTURE_LOD_BIAS_EXT
911 - silence some compiler warnings (gcc 2.96)
912 - enable the #define GL_VERSION_1_3 in GL/gl.h
913 - added GL 1.3 and GLX 1.4 entries to gl_mangle.h and glx_mangle.h
914 - fixed glu.h typedef problem found with MSDev 6.0
915 - build libGL.so with -Bsymbolic (fixes bug found with Chromium)
916 - added missing 'const' to glXGetContextIDEXT() in glxext.h
917 - fixed a few glXGetProcAddress() errors (texture compression, etc)
918 - fixed start index bug in compiled vertex arrays (Keith)
919 - fixed compilation problems in src/SPARC/glapi_sparc.S
920 - fixed triangle strip "parity" bug found in VTK medical1 demo (Keith)
921 - use glXGetProcAddressARB in GLUT to avoid extension linking problems
922 - provoking vertex of flat-shaded, color-index triangles was wrong
923 - fixed a few display list bugs (GLUT walker, molecule, etc) (Keith)
924 - glTexParameter didn't flush the vertex buffer (Ray Tice)
925 - feedback attributes for glDraw/CopyPixels and glBitmap were wrong
926 - fixed bug in normal length caching (ParaView lighting bug)
927 - fixed separate_specular color bug found in Chimera (18 Dec 2001)
932 - New DOS (DJGPP) driver written by Daniel Borca
933 - New driver interface functions for TCL drivers (such as Radeon DRI)
934 - GL_RENDERER string returns "Mesa Offscreen16" or "Mesa Offscreen32"
935 if using deep color channels
936 - latest GL/glext.h and GL/glxext.h headers from SGI
938 - GL_BLEND with non-black texture env color wasn't always correct
939 - GL_REPLACE with GL_RGB texture format wasn't always correct (alpha)
940 - glTexEnviv( pname != GL_TEXTURE_ENV_COLOR ) was broken
941 - glReadPixels was sometimes mistakenly clipped by the scissor box
942 - glDraw/ReadPixels didn't catch all the errors that they should have
943 - Fixed 24bpp rendering problem in Windows driver (Karl Schultz)
944 - 16-bit GLchan mode fixes (m_trans_tmp.h, s_triangle.c)
945 - Fixed 1-bit float->int conversion bug in glDrawPixels(GL_DEPTH_COMP)
946 - glColorMask as sometimes effecting glXSwapBuffers()
947 - fixed a potential bug in XMesaGarbageCollect()
948 - N threads rendering into one window didn't work reliably
949 - glCopyPixels didn't work for deep color channels
950 - improved 8 -> 16bit/channel texture image conversion (Gerk Huisma)
951 - glPopAttrib() didn't correctly restore user clip planes
952 - user clip planes failed for some perspective projections (Chromium)
954 - mipmap LOD computation
959 - updated GL/glext.h file (version 15)
960 - corrected MMX blend code (Jose Fonseca)
961 - support for software-based alpha planes in Windows driver
962 - updated GGI driver (Filip Spacek)
964 - glext.h had wrong values for GL_DOT3_RGB[A]_EXT tokens
965 - OSMesaMakeCurrent() didn't recognize buffer size changes
966 - assorted conformance fixes for 16-bit/channel rendering
967 - texcombine alpha subtraction mode was broken
968 - fixed lighting bug with non-uniform scaling and display lists
969 - fixed bug when deleting shared display lists
970 - disabled SPARC cliptest assembly code (Mesa bug 544665)
971 - fixed a couple Solaris compilation/link problems
972 - blending clipped glDrawPixels didn't always work
973 - glGetTexImage() didn't accept packed pixel types
974 - glPixelMapu[is]v() could explode given too large of pixelmap
975 - glGetTexParameter[if]v() didn't accept GL_TEXTURE_MAX_ANISOTROPY_EXT
976 - glXCopyContext() could lead to segfaults
977 - glCullFace(GL_FRONT_AND_BACK) didn't work (bug 572665)
979 - lots of C++ (g++) code clean-ups
980 - lots of T&L updates for the Radeon DRI driver
982 - mipmap LOD computation (fixed for Mesa 4.1)
985 4.0.4 October 3, 2002
987 - GL_NV_texture_rectangle extension
988 - updated glext.h header (version 17)
989 - updated DOS driver (Daniel Borca)
990 - updated BeOS R5 driver (Philippe Houdoin)
991 - added GL_IBM_texture_mirror_repeat
992 - glxinfo now takes -l option to print interesting OpenGL limits info
993 - GL_MESA_ycbcr_texture extension
994 - GL_APPLE_client_storage extension (for some DRI drivers only)
995 - GL_MESA_pack_invert extension
997 - fixed GL_LINEAR fog bug by adding clamping
998 - fixed FP exceptions found using Alpha CPU
999 - 3dfx MESA_GLX_FX=window (render to window) didn't work
1000 - fixed memory leak in wglCreateContest (Karl Schultz)
1001 - define GLAPIENTRY and GLAPI if undefined in glu.h
1002 - wglGetProcAddress didn't handle all API functions
1003 - when testing for OpenGL 1.2 vs 1.3, check for GL_ARB_texture_cube_map
1004 - removed GL_MAX_CONVOLUTION_WIDTH/HEIGHT from glGetInteger/Float/etc()
1005 - error checking in compressed tex image functions had some glitches
1006 - fixed AIX compile problem in src/config.c
1007 - glGetTexImage was using pixel unpacking instead of packing params
1008 - auto-mipmap generation for cube maps was incorrect
1010 - max texture units reduced to six to accomodate texture rectangles
1011 - removed unfinished GL_MESA_sprite_point extension code
1014 4.1 October 29, 2002
1016 - GL_NV_vertex_program extension
1017 - GL_NV_vertex_program1_1 extension
1018 - GL_ARB_window_pos extension
1019 - GL_ARB_depth_texture extension
1020 - GL_ARB_shadow extension
1021 - GL_ARB_shadow_ambient extension
1022 - GL_EXT_shadow_funcs extension
1023 - GL_ARB_point_parameters extension
1024 - GL_ARB_texture_env_crossbar
1025 - GL_NV_point_sprite extension
1026 - GL_NV_texture_rectangle extension
1027 - GL_EXT_multi_draw_arrays extension
1028 - GL_EXT_stencil_two_side extension
1029 - GLX_SGIX_fbconfig and GLX_SGIX_pbuffer extensions
1030 - GL_ATI_texture_mirror_once extension (Ian Romanick)
1031 - massive overhaul/simplification of software rasterizer module,
1032 many contributions from Klaus Niederkrueger
1033 - faster software texturing in some cases (i.e. trilinear filtering)
1034 - new OSMesaGetProcAddress() function
1035 - more blend modes implemented with MMX code (Jose Fonseca)
1036 - added glutGetProcAddress() to GLUT
1037 - added GLUT_FPS env var to compute frames/second in glutSwapBuffers()
1038 - pbinfo and pbdemo PBuffer programs
1039 - glxinfo -v prints transprent pixel info (Gerd Sussner)
1041 - better mipmap LOD computation (prevents excessive blurriness)
1042 - OSMesaMakeCurrent() didn't recognize buffer size changes
1043 - assorted conformance fixes for 16-bit/channel rendering
1044 - texcombine alpha subtraction mode was broken
1045 - fixed some blend problems when GLchan==GLfloat (Gerk Huisma)
1046 - clamp colors to [0,inf] in OSMesa if GLchan==GLfloat (Gerk Huisma)
1047 - fixed divide by zero error in NURBS tessellator (Jon Perry)
1048 - fixed GL_LINEAR fog bug by adding clamping
1049 - fixed FP exceptions found using Alpha CPU
1050 - 3dfx/glide driver render-to-window feature was broken
1051 - added missing GLX_TRANSPARENT_RGB token to glx.h
1052 - fixed error checking related to paletted textures
1053 - fixed reference count error in glDeleteTextures (Randy Fayan)
1055 - New spec file and Python code to generate some GL dispatch files
1056 - Glide driver defaults to "no" with autoconf/automake
1057 - updated demos/stex3d with new options
1060 5.0 November 13, 2002
1062 - OpenGL 1.4 support (glGetString(GL_VERSION) returns "1.4")
1063 - removed some overlooked debugging code
1064 - glxinfo updated to support GLX_ARB_multisample
1065 - GLUT now support GLX_ARB_multisample
1066 - updated DOS driver (Daniel Borca)
1068 - GL_POINT and GL_LINE-mode polygons didn't obey cull state
1069 - fixed potential bug in _mesa_align_malloc/calloc()
1070 - fixed missing triangle bug when running vertex programs
1071 - fixed a few HPUX compilation problems
1072 - FX (Glide) driver didn't compile
1073 - setting GL_TEXTURE_BORDER_COLOR with glTexParameteriv() didn't work
1074 - a few EXT functions, like glGenTexturesEXT, were no-ops
1075 - a few OpenGL 1.4 functions like glFogCoord*, glBlendFuncSeparate,
1076 glMultiDrawArrays and glMultiDrawElements were missing
1077 - glGet*(GL_ACTIVE_STENCIL_FACE_EXT) was broken
1078 - Pentium 4 Mobile was mistakenly identified as having 3DNow!
1079 - fixed one-bit error in point/line fragment Z calculation
1080 - fixed potential segfault in fakeglx code
1081 - fixed color overflow problem in DOT3 texture env mode
1084 5.0.1 March 30, 2003
1086 - DOS driver updates from Daniel Borca
1087 - updated GL/gl_mangle.h file (Bill Hoffman)
1089 - auto mipmap generation for cube maps was broken (bug 641363)
1090 - writing/clearing software alpha channels was unreliable
1091 - minor compilation fixes for OS/2 (Evgeny Kotsuba)
1092 - fixed some bad assertions found with shadowtex demo
1093 - fixed error checking bug in glCopyTexSubImage2D (bug 659020)
1094 - glRotate(angle, -x, 0, 0) was incorrect (bug 659677)
1095 - fixed potential segfault in texture object validation (bug 659012)
1096 - fixed some bogus code in _mesa_test_os_sse_exception_support (Linus)
1097 - fix fog stride bug in tnl code for h/w drivers (Michel Danzer)
1098 - fixed glActiveTexture / glMatrixMode(GL_TEXTURE) bug (#669080)
1099 - glGet(GL_CURRENT_SECONDARY_COLOR) should return 4 values, not 3
1100 - fixed compilation problem on Solaris7/x86 (bug 536406)
1101 - fixed prefetch bug in 3DNow! code (Felix Kuhling)
1102 - fixed NeXT build problem (FABSF macro)
1103 - glDrawPixels Z values when glPixelZoom!=1 were invalid (bug 687811)
1104 - zoomed glDraw/CopyPixels with clipping sometimes failed (bug 689964)
1105 - AA line and triangle Z values are now rounded, not truncated
1106 - fixed color interpolation bug when GLchan==GLfloat (bug 694461)
1107 - glArePrograms/TexturesResident() wasn't 100% correct (Jose Fonseca)
1108 - fixed a minor GL_COLOR_MATERIAL bug
1109 - NV vertex program EXP instruction was broken
1110 - glColorMask misbehaved with X window / pixmap rendering
1111 - fix autoconf/libtool GLU C++ linker problem on Linux (a total hack)
1112 - attempt to fix GGI compilation problem when MesaDemos not present
1113 - NV vertex program ARL-relative fetches didn't work
1115 - use glPolygonOffset in gloss demo to avoid z-fighting artifacts
1116 - updated winpos and pointblast demos to use ARB extensions
1117 - disable SPARC normal transformation code (bug 673938)
1118 - GLU fixes for OS/2 (Evgeny Kotsuba)
1121 5.0.2 September 5, 2003
1123 - fixed texgen problem causing texcoord's Q to be zero (stex3d)
1124 - default GL_TEXTURE_COMPARE_MODE_ARB was wrong
1125 - GL_CURRENT_MATRIX_NV query was wrong
1126 - GL_CURRENT_MATRIX_STACK_DEPTH_NV query was off by one
1127 - GL_LIST_MODE query wasn't correct
1128 - GL_FOG_COORDINATE_SOURCE_EXT query wasn't supported
1129 - GL_SECONDARY_COLOR_ARRAY_SIZE_EXT query returned wrong value
1130 - blended, wide lines didn't always work correctly (bug 711595)
1131 - glVertexAttrib4svNV w component was always 1
1132 - fixed bug in GL_IBM_rasterpos_clip (missing return)
1133 - GL_DEPTH_TEXTURE_MODE = GL_ALPHA didn't work correctly
1134 - a few Solaris compilation fixes
1135 - fixed glClear() problem for DRI drivers (non-existant stencil, etc)
1136 - fixed int/REAL mixup in GLU NURBS curve evaluator (Eric Cazeaux)
1137 - fixed delete [] bug in SI GLU (bug 721765) (Diego Santa Cruz)
1138 - glFog() didn't clamp fog colors
1139 - fixed bad float/int conversion for GL_TEXTURE_PRIORITY in the
1140 gl[Get]TexParameteri[v] functions
1141 - fixed invalid memory references in glTexGen functions (bug 781602)
1142 - integer-valued color arrays weren't handled correctly
1143 - glDrawPixels(GL_DEPTH_COMPONENT) with glPixelZoom didn't work
1144 - GL_EXT_texture_lod_bias is part of 1.4, overlooked in 5.0.1
1146 - build GLUT with -fexceptions so C++ apps propogate exceptions
1149 5.1 December 17, 2003
1151 - reorganized directory tree
1152 - GL_ARB_vertex/fragment_program extensions (Michal Krol & Karl Rasche)
1153 - GL_ATI_texture_env_combine3 extension (Ian Romanick)
1154 - GL_SGI_texture_color_table extension (Eric Plante)
1155 - GL_NV_fragment_program extension
1156 - GL_NV_light_max_exponent extension
1157 - GL_EXT_texture_rectangle (identical to GL_NV_texture_rectangle)
1158 - GL_ARB_occlusion_query extension
1159 - GL_ARB_point_sprite extension
1160 - GL_ARB_texture_non_power_of_two extension
1161 - GL_IBM_multimode_draw_arrays extension
1162 - GL_EXT_texture_mirror_clamp extension (Ian Romanick)
1163 - GL_ARB_vertex_buffer_object extension
1164 - new X86 feature detection code (Petr Sebor)
1165 - less memory used for display lists and vertex buffers
1166 - demo of per-pixel lighting with a fragment program (demos/fplight.c)
1167 - new version (18) of glext.h header
1168 - new spriteblast.c demo of GL_ARB_point_sprite
1169 - faster glDrawPixels in X11 driver in some cases (see RELNOTES-5.1)
1170 - faster glCopyPixels in X11 driver in some cases (see RELNOTES-5.1)
1172 - really enable OpenGL 1.4 features in DOS driver.
1173 - fixed issues in glDrawPixels and glCopyPixels for very wide images
1174 - glPixelMapf/ui/usv()'s size parameter is GLsizei, not GLint
1175 - fixed some texgen bugs reported by Daniel Borca
1176 - fixed wglMakeCurrent(NULL, NULL) bug (#835861)
1177 - fixed glTexSubImage3D z-offset bug (Cedric Gautier)
1178 - fixed RGBA blend enable bug (Ville Syrjala)
1179 - glAccum is supposed to be a no-op in selection/feedback mode
1180 - fixed texgen bug #597589 (John Popplewell)
1182 - dropped API trace feature (src/Trace/)
1183 - documentation overhaul. merged with website content. more html.
1184 - glxgears.c demo updated to use GLX swap rate extensions
1185 - glTexImage1/2/3D now allows width/height/depth = 0
1186 - disable SPARC asm code on Linux (bug 852204)
1189 6.0 January 16, 2004
1191 - full OpenGL 1.5 support
1192 - updated GL/glext.h file to version 21
1194 - changed max framebuffer size to 4Kx4K (MAX_WIDTH/HEIGHT in config.h)
1196 - fixed bug in UNCLAMPED_FLOAT_TO_UBYTE macro; solves a color
1198 - updated suno5-gcc configs
1199 - glColor3 functions sometimes resulted in undefined alpha values
1200 - fixed FP divide by zero error seen on VMS with xlockmore, others
1201 - fixed vertex/fragment program debug problem (bug 873011)
1202 - building on AIX with gcc works now
1203 - glDeleteProgramsARB failed for ARB fragment programs (bug 876160)
1204 - glDrawRangeElements tried to modify potentially read-only storage
1205 - updated files for building on Windows
1210 - upgraded glext.h to version 22
1211 - new build targets (Dan Schikore)
1212 - new linux-x86-opteron build target (Heath Feather)
1214 - glBindProgramARB didn't update all necessary state
1215 - fixed build problems on OpenBSD
1216 - omit CVS directories from tarballs
1217 - glGetTexImage(GL_COLOR_INDEX) was broken
1218 - fixed an infinite loop in t&l module
1219 - silenced some valgrind warnings about using unitialized memory
1220 - fixed some compilation/link glitches on IRIX (Mike Stephens)
1221 - glBindProgram wasn't getting compiled into display lists
1222 - GLX_FBCONFIG_ID wasn't recognized in glXChooseFBConfig() (bug 888079)
1223 - two-sided lighting and vertex program didn't work (bug 887330)
1224 - stores to program parameter registers in vertex state programs
1226 - fixed glOrtho bug found with gcc 3.2.2 (RH9)
1227 - glXCreateWindow() wasn't fully implemented (bug 890894)
1228 - generic vertex attribute arrays didn't work in display lists
1229 - vertex buffer objects' default usage and access fields were wrong
1230 - glDrawArrays with start!=0 was broken
1231 - fragment program PK2H, UP2H, UP4B and UP4UB instructions were broken
1232 - linux-osmesa16-static config didn't work
1233 - fixed a few color index rendering problems (bug 910687)
1234 - glInterleavedArrays didn't respect GL_CLIENT_ACTIVE_TEXTURE
1235 - OSMesa RGB and BGR modes were broken
1236 - glProgramStringARB mistakenly required a null-terminated string
1237 - fragment program XPD instruction was incorrect
1238 - glGetMaterial() didn't work reliably
1239 - ARB_fragment_program KIL instruction was incorrect
1244 - Revamped Makefile system
1245 - glXUseRotatedXFont() utility (see xdemos/xuserotfont.c)
1246 - internal driver interface changes related to texture object
1247 allocation, vertex/fragment programs, BlendEquationSeparate, etc.
1248 - option to walk triangle edges with double-precision floats
1249 (Justin Novosad of Discreet) (see config.h file)
1250 - support for AUX buffers in software GLX driver
1251 - updated glext.h to version 24 and glxext.h to version 6
1252 - new MESA_GLX_FORCE_ALPHA and MESA_GLX_DEPTH_BITS env vars
1253 - updated BeOS support (Philippe Houdoin)
1255 - fragment fog interpolation is perspective corrected now
1256 - new glTexImage code, much cleaner, may be a bit faster
1258 - glArrayElement in display lists didn't handle generic vertex attribs
1259 - glFogCoord didn't always work properly
1260 - ARB_fragment_program fog options didn't work
1261 - frag prog TEX instruction no longer incorrectly divides s,t,r by q
1262 - ARB frag prog TEX and TEXP instructions now use LOD=0
1263 - glTexEnviv in display lists didn't work
1264 - glRasterPos didn't do texgen or apply texture matrix
1265 - GL_DOUBLE-valued vertex arrays were broken in some cases
1266 - fixed texture rectangle edge/border sampling bugs
1267 - sampling an incomplete texture in a fragment program would segfault
1268 - glTexImage was missing a few error checks
1269 - fixed some minor glGetTexParameter glitches
1270 - GL_INTENSITY was mistakenly accepted as a <format> to glTexImage
1271 - fragment program writes to RC/HC register were broken
1272 - fixed a few glitches in GL_HP_occlusion_test extension
1273 - glBeginQueryARB and glEndQueryARB didn't work inside display lists
1274 - vertex program state references were broken
1275 - fixed triangle color interpolation bug on AIX (Shane Blackett)
1276 - fixed a number of minor memory leaks (bug #1002030)
1281 - enabled GL_ARB_texture_rectangle (same as GL_NV_texture_rectangle)
1282 - updated Doxygen support (Jose Fonseca)
1284 - some GGI driver updates (Christoph Egger, bug 1025977)
1286 - Omit GL_ARB_texture_non_power_of_two from list of OpenGL 1.5 features
1287 - fixed a few compilation issues on IRIX
1288 - fixed a matrix classification bug (reported by Wes Bethel)
1289 - we weren't reseting the vertex/fragment program error state
1290 before parsing (Dave Reveman)
1291 - adjust texcoords for sampling texture rectangles (Dave Reveman)
1292 - glGet*(GL_MAX_VERTEX_ATTRIBS_ARB) wasn't implemented
1293 - repeated calls to glDeleteTexture(t) could lead to a crash
1294 - fixed potential ref count bugs in VBOs and vertex/fragment programs
1295 - spriteblast demo didn't handle window size changes correctly
1296 - glTexSubImage didn't handle pixels=NULL correctly for PBOs
1297 - fixed color index mode glDrawPixels bug (Karl Schultz)
1300 6.2.1 December 9, 2004
1302 - don't apply regular fog or color sum when using a fragment program
1303 - glProgramEnvParameter4fARB always generated an error on
1304 GL_FRAGMENT_PROGRAM_ARB (fdo bug 1645)
1305 - glVertexAttrib3svNV and glVertexAttrib3svARB were broken
1306 - fixed width/height mix-up in glSeparableFilter2D()
1307 - fixed regression in glCopyPixels + convolution
1308 - glReadPixels from a clipped front color buffer didn't always work
1309 - glTexImage didn't accept GL_RED/GREEN/BLUE as the format
1310 - Attempting queries/accesses of VBO 0 weren't detected as errors
1311 - paletted textures failed if the palette had fewer than 256 entries
1313 - fixed a bunch of compiler warnings found with gcc 3.4
1314 - bug reports should to go bugzilla.freedesktop.org
1319 - GL_EXT_framebuffer_object extension
1320 - GL_ARB_draw_buffers extension
1321 - GL_ARB_pixel_buffer_object extension
1322 - GL_OES_read_format extension (Ian Romanick)
1323 - DirectFB driver (Claudio Ciccani)
1324 - x86_64 vertex transformation code (Mikko T.)
1325 - Updated GL/glext.h to version 29
1327 - added -stereo option for glxgears demo (Jacek Rosik)
1328 - updated the PBuffer demo code in xdemos/ directory
1329 - glDeleteTextures/Programs/Buffers() now makes the object ID
1330 available for immediate re-use
1331 - assorted 64-bit clean-ups fixes (x86_64 and Win64)
1332 - lots of internal changes for GL_EXT_framebuffer_object
1334 - some functions didn't support PBO functionality
1335 - glGetTexImage didn't convert color index images to RGBA as required
1336 - fragment program texcoords were sometimes wrong for points and lines
1337 - fixed problem with negative dot product in arbfplight, fplight demos
1338 - fixed bug in perspective correction of antialiased, textured lines
1339 - querying GL_POST_CONVOLUTION_ALPHA_BIAS_EXT returned wrong value
1340 - fixed a couple per-pixel fog bugs (Soju Matsumoto)
1341 - glGetBooleanv(GL_FRAGMENT_PROGRAM_BINDING_NV) was broken
1342 - fixed float parsing bug in ARB frag/vert programs (bug 2520)
1343 - XMesaGetDepthBuffer() returned incorrect value for bytesPerValue
1344 - GL_COLOR_MATERIAL with glColor3 didn't properly set diffuse alpha
1345 - glXChooseFBConfig() crashed if attribList pointer was NULL
1346 - program state.light[n].spot.direction.w was wrong value (bug 3083)
1347 - fragment program fog option required glEnable(GL_FOG) - wrong.
1348 - glColorTable() could produce a Mesa implementation error (bug 3135)
1349 - RasterPos could get corrupted by color index rendering path
1350 - Removed bad XTranslateCoordinates call when rendering to Pixmaps
1351 - glPopAttrib() didn't properly restore GL_TEXTURE_GEN enable state
1352 - fixed a few Darwin compilation problems
1356 This was an intermediate release for X.org which wasn't otherwise released.
1359 6.3.2 August 19, 2005
1361 - The distribution now includes the DRI drivers and GLX code
1363 - Made the DRI "new" driver interface standard, remove old code
1365 - GL_ARB_vertex/fragment_shader were mistakenly listed in the
1367 - negative relative addressing in vertex programs was broken
1368 - update/fix SPARC assembly code for vertex transformation
1369 - fixed memory leak when freeing GLX drawables/renderbuffers
1370 - fixed display list memory leak
1371 - the GL_PIXEL_MAP_I_TO_I table is now floating point, not integer
1372 - wglGetProcAddress() didn't handle wgl-functions
1373 - fixed glxext.h cross-compile issue (Colin Harrison)
1374 - assorted DRI driver fixes
1377 6.4 October 24, 2005
1379 - Added a fast XOR line drawing function in Xlib driver
1380 - Added support for GL_ARB_texture_mirrored_repeat to savage
1381 driver (supported only on Savage4 hardware).
1383 - Mesa now packaged in three parts: Library, Demos and GLUT
1385 - GLX_X_RENDERABLE token wasn't accepted by glXChooseFBConfig
1386 - Some files were present multiple times in the 6.3.2 tarballs
1387 - r200_vtxtmp_x86.S file was missing from 6.3.2 tarball (bug 4207)
1388 - glxgears_fbconfig demo didn't work (bug 4237)
1389 - fixed bug when bilinear sampling 2d textures with borders
1390 - glXCreatePbuffer() could segfault instead of returning 0 (bug 4235)
1391 - fixed undefined frexp and rand in X.org libGLcore.a (bug 4242)
1392 - fixed a few problems with proxy color tables (bug 4270)
1393 - fixed precision problem in Z clearing (bug 4395)
1394 - glBitmap, glDraw/CopyPixels mistakenly generated selection hits
1395 - fixed potential segfault caused by reading pixels outside
1396 of renderbuffer bounds
1397 - glGetTexLevelParameter didn't accept GL_TEXTURE_DEPTH_SIZE_ARB
1398 - fixed memory corruption bug involving software alpha buffers
1399 - glReadPixels clipped by window bounds was sometimes broken
1400 - glDraw/CopyPixels of stencil data ignored the stencil write mask
1401 - glReadPixels from a texture bound to a framebuffer object didn't work
1402 - glIsRender/FramebufferEXT weren't totally correct
1403 - fixed a number of point size attenuation/fade bugs
1404 - fixed glFogCoord bug 4729
1405 - GLX encoding for transpose matrix functions was broken
1406 - fixed broken fragment program KIL and SWZ instructions
1407 - fragment programs that wrote result.depth.z didn't work
1410 6.4.1 November 30, 2005
1412 - redefining a vertex program string didn't take effect in TNL module
1413 - fixed occasional segfault upon vertex/fragment parsing error
1414 - vertex program LIT instruction didn't handle 0^0=1 correctly
1415 - fragment program fog option didn't work with glDrawPixels, glBitmap
1416 - USE_MGL_NAMESPACE didn't work for x86-64
1417 - OSMesa demos were missing from previous release tarballs
1418 - fixed problem with float->ushort conversion in glClear (bug 4992)
1419 - popping of GL_EYE_PLANE texgen state was broken (bug 4996)
1420 - popping of GL_SPOT_DIRECTION light state was broken (bug 5005)
1421 - fixed occasional triangle color interpolation problem on VMS
1422 - work around invalid free() call (bug 5131)
1423 - fixed BSD X server compilation problem by including stdint.h
1426 6.4.2 February 2, 2006
1428 - added OSMesaColorClamp() function/feature
1429 - added wglGetExtensionStringARB() function
1431 - fixed some problems when building on Windows
1432 - GLw header files weren't installed by installmesa script (bug 5396)
1433 - GL/glfbdev.h file was missing from tarballs
1434 - fixed TNL initialization bug which could lead to crash (bug 5791)
1439 - OpenGL Shading Language support through GL_ARB_shader_objects,
1440 GL_ARB_shading_language_100, GL_ARB_vertex_shader and
1441 GL_ARB_fragment_shader (done by Michal Krol)
1442 - GL_EXT_packed_depth_stencil extension
1443 - GL_EXT_timer_query extension
1444 - GL_EXT_framebuffer_blit extension
1445 - GL_ARB_half_float_pixel
1446 - reflect demo improved to support multiple windows
1447 - singlebuffer demo (shows no/little-flicker single-buffered rendering)
1448 - r200: enable GL_ARB_texture_env_crossbar, separate the texture
1449 sampling unit bits from the texture env combine enable bits
1450 - r200: add support for GL_ATI_fragment_shader
1451 - added fast XOR-mode line drawing optimization
1452 - radeon: add support for all 3 tmus, GL_ARB_texture_cube_map
1453 and GL_EXT_fog_coord
1454 - MESA_GLX_ALPHA_BITS env var for xlib driver
1455 - many DRI driver updates (including screen rotation support
1456 for the Intel DRI driver)
1458 - removed GL_HP_occlusion_test (use GL_ARB_occlusion_query instead)
1459 - removed GL_SGIX/SGIS_pixel_texture extensions
1461 - fixed glxcontextmodes.c datatype problem (bug 5835)
1462 - fixed aix-gcc build/install bugs (bug 5874)
1463 - fixed some bugs in texture env program generation
1464 - glXCopyContext() didn't handle texture object bindings properly
1465 - glXCopyContext() didn't copy all lighting state
1466 - fixed FreeBSD config (Pedro Giffuni)
1467 - fixed some minor framebuffer object bugs
1468 - replaced dprintf() with _glu_printf() in GLU (bug 6244)
1469 - fixed a number of thread safety bugs/regressions
1470 - fixed a number of GLU tesselator bugs (John Shell, bug 6339)
1471 - paletted texturing was broken w/ floating point palettes (K. Schultz)
1472 - lots of assorted framebuffer object bug fixes
1474 6.5.1 month, day, 2006
1477 - The glVertexAttribARB functions no longer alias the conventional
1480 - fixed broken texture border handling for depth textures (bug 6498)
1481 - removed the test for duplicated framebuffer attachments, per
1482 version 117 of the GL_EXT_framebuffer_object specification
1483 - fixed a few render-to-texture bugs, including render to depth texture
1484 - clipping of lines against user-defined clip planes was broken (6512)
1485 - assembly language dispatch for SPARC was broken (bug 6484)
1486 - assorted compilation fixes on various Unix platforms (Dan Schikore)
1487 - glPopAttrib could restore an invalid value for GL_DRAW_BUFFER