<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<
meta http-equiv="content-type" content="text/html; charset=utf-8">
<
link rel="stylesheet" type="text/css" href="mesa.css">
<
h1>The Mesa 3D Graphics Library<
/h1>
NOTE: Changes for Mesa 6.4 and later are documented in the corresponding
<
a href="relnotes.html">release notes<
/a> file.
<
h1>Mesa
Version History<
/h1>
<
h2>
1.0 beta February
1995<
/h2>
<
h2>
1.1 beta March
4,
1995<
/h2>
Changes:
<
li>faster point and line drawing
(2x faster
)
<
li>more systems supported, better Makefiles
<
li>Renamed lib*.a files to avoid collisions
New:
<
li>pseudo-GLX functions added
<
li>new implementation of evaluators
(eval2.c
)
<
h2>1.1.1 beta March
7,
1995<
/h2>
Changes:
<
li>Reverted from eval2.c to eval.c due to FPE on Linux
<
li>more speed improvements
<
li>more Makefile changes
<
h2>1.1.2 beta March
14,
1995<
/h2>
New:
<
li>implementation of SGI
's blending extensions
<li>glXUseXFont implemented
<li>added MESA_DEBUG environment variable support
</ul>
Changes:
<ul>
<li>Using eval2.c again
<li>more FPE-prevention checks (0-length normals are OK)
<li>a few small bug fixes
<li>much faster pixel logic ops!
<li>faster transformation arithmetic
</ul>
<h2>1.1.3 beta March 31, 1995</h2>
New:
<ul>
<li>gluScaleImage() and gluBuild2DMipMaps() implemented
<li>Mesa widgets for Xt/Motif
<li>blendEXT demos
<li>added environment variables for selecting visuals
</ul>
Changes:
<ul>
<li>almost all GLUT demos work correctly now
<li>faster X device driver functions
<li>more bug fixes
</ul>
<h2>1.1.4 beta April 20, 1995</h2>
Bug fixes:
<ul>
<li>missing #define SEEK_SET in src-tk/image.c
<li>compile glShadeModel into display lists
<li>fixed pow() domain error in src/light.c
<li>fixed "flickering bitmaps" in double buffer mode
<li>fixed tk.h and aux.h for C++
<li>state of LIGHT_MODEL_LOCAL_VIEWER was inverted
</ul>
New features:
<ul>
<li>MUCH, MUCH nicer dithering in 8-bit RGB mode
<li>updated widgets and widget demos
<li>Implemented GLXPixmap functions
<li>Added GLU 1.1 and GLX 1.1 functions
<li>Changed the X/Mesa interface API, more versatile
<li>Implemented gluPartialDisk()
</ul>
<h2>1.2 May 22, 1995</h2>
Bug fixes:
<ul>
<li>IRIX 4.x makefile problem
<li>modified tk to share root colormap as needed
<li>gluLookAt normalization problem
<li>suppress Expose, NoExpose events in swapbuffers
<li>glBitmap() and glDrawPixels() clipping
</ul>
New features:
<ul>
<li>GL_BLEND, GL_MODULATE, GL_DECAL, and GL_REPLACE_EXT texture
modes implemented
<li>texture maps stored more efficiently
<li>texture maps can be compiled into display lists
<li>Bogdan Sikorski's GLU polygon tesselation code
<
li>Linas Vepstas
's sweep and extrusion library
<li>glXCreateContext()'s shareList parameter works as it's supposed to.
XMesaCreateContext() updated to accept a shareList parameter too.
<li>Mesa can be compiled with real OpenGL .h files
<li>MESA_BACK_BUFFER environment variable
<li>better GLX error checking
</ul>
<h2>1.2.1 June 22, 1995</h2>
Bug fixes:
<ul>
<li>X/Mesa double buffer window resize crash
<li>widgets now pass PointerMotion events
<li>X/Mesa incorrect default clear color and drawing color
<li>more robust X MIT-SHM support in X/Mesa
<li>glTexImage( format=GL_LUMINANCE ) didn't work
<
li>GL_LINE mode polygons with line
width >
1.0 could cause a crash
<
li>numerous feedback bugs
<
li>glReadPixels
() from depth buffer was wrong
<
li>error prone depth and stencil buffer allocation
New features:
<
li>Preliminary Microsoft Windows driver
<
li>Implemented a number of missing functions: glEvalCoord
[12][df
]v
(),
glGet...(), etc.
<
li>Added a few missing symbols to gl.h and glu.h
<
li>Faster rendering of smooth-shaded, RGBA, depth-buffered polygons.
<
li>Faster rendering of lines when
width=2.0
<
li>Stencil-related functions now work in display lists
Changes:
<
li>renamed aux.h as glaux.h
(MS-DOS names can
't start with aux)
<li>most filenames are in 8.3 format to accommodate MS-DOS
<li>use GLubytes to store arrays of colors instead of GLints
</ul>
<h2>1.2.2 August 2, 1995</h2>
New features:
<ul>
<li>texture mapped points and lines
<li>NURBS! (but not 100% complete)
<li>viewports may safely extend beyond window boundaries
<li>MESA_PRIVATE_CMAP environment variable
<li>Grayscale X display support
<li>two new demos: demos/gears.c and demos/shadow.c
<li>MachTen for Macintosh configuration
</ul>
Bug fixes:
<ul>
<li>glGet*(GL_DEPTH_BITS) returned bytes, not bits
<li>point, line, and bitmap rasterization suffered from roundoff errors
<li>fixed a division by zero error in line clippping
<li>occasional wrong default background color really fixed!
<li>glDepthFunc(GL_ALWAYS) with glDepthMask(GL_FALSE) didn't work
<
li>gluBuild2DMipmaps malloc problem fixed
<
li>view volume clipping of smooth shaded lines resulted in bad colors
Changes:
<
li>new visual selection
method in glXChooseVisual
()
<
li>improved GLU quadric functions
<
li>call XSync
for glFinish and XFlush
for glFlush
<
li>glVertex
() calls now use a function pointer to avoid conditionals
<
li>removed contrib directory from Mesa tar file
(available on ftp site
)
<
li>AIX shared library support
<
li>Removed GLUenum
type as it
's not in OpenGL
</ul>
<h2>1.2.3 September 26, 1995</h2>
New features:
<ul>
<li>Mesa header files now equivalent to SGI OpenGL headers
<li>Support for HP's Color Recovery dithering displays
<
li>Faster vertex transformation
<
li>Faster raster operations into X windows under certain conditions
<
li>New configurations: HP w
/ shared libs, Ultrix w
/ GCC,
Data General
<
li>
4-bit visuals now supported
Bug fixes:
<
li>round-off errors in clipping lines against clip planes fixed
<
li>byte swapping between hosts and display servers implemented
<
li>glGetError
() can be called without a current rendering context
<
li>problem with accidentally culled polygons is fixed
<
li>fixed some widget compilation problems
<
h2>1.2.4 November
17,
1995<
/h2>
New features:
<
li>More speed improvements
(lighting, fogging, polygon drawing
)
<
li>Window system and OS-independent off-screen rendering
<
li>Preliminary Fortran bindings
<
li>glPolygonOffsetEXT implemented
<
li>glColorMask and glIndexMask now fully implemented
<
li>glPixelZoom implemented
<
li>display lists fully implemented
<
li>dithering in
8-bit TrueColor
/DirectColor visuals
Changes:
<
li>Improved device driver interface
<
li>tk.h renamed to gltk.h to avoid conflicts with Tcl
's Tk
<li>Dithering support moved from core into device driver
</ul>
Bug fixes:
<ul>
<li>glEnable/Disable( GL_LIGHTING ) didn't always take effect
<
li>glReadPixels byte swapping was broken
<
li>glMaterial with pname
==GL_AMBIENT_AND_DIFFUSE was broken
<
li>duplicate glColor4b
() prototype in GL
/gl.h removed
<
li>stripes in wave -ci demo fixed
<
li>GL_LINEAR_MIPMAP_NEAREST had wrong
value
<
li>bugs in HP
Color Recovery support fixed
<
li>fixed bug when blending lines, points, bitmaps outside of window
<
h2>1.2.5 November
30,
1995<
/h2>
New Features:
<
li>updated MS Windows driver
<
li>new implementation of StaticGray
/GrayScale visual support
Bug fixes:
<
li>pixelzooming with gamma correction or blending didn
't work
<li>HP color recovery visual wasn't being picked by glXChooseVisual
<
li>glClear didn
't always observe glColorMask changes
<li>olympic and offset demos didn't compile on some Suns
<
li>texcoord clamping wasn
't correct
<li>a polygon optimization introduced an occasional sampling problem
</ul>
<h2>1.2.6 January 26, 1996</h2>
New Features:
<ul>
<li>faster line and polygon rendering under certain conditions. See
Performance Tips 9 and 10 in README
<li>profiling
<li>lighting is a bit faster
<li>better perspective corrected texture mapping
<li>Amiga AmiWin (X11) support
<li>preliminary Linux SVGA driver
Changes:
<li>now using a 16-bit depth buffer, faster, smaller
<li>GL_NORMALIZE is disabled by default
</ul>
Bug fixes:
<ul>
<li>projective texture mapping
<li>fixed a memory leak in the context destroy function
<li>GL_POLYGON with less than 3 vertices caused a crash
<li>glGet*() returned wrong result for GL_INDEX_MODE
<li>reading pixels from an unmapped X window caused a BadMatch error
</ul>
<h2>1.2.7 March 5, 1996</h2>
New:
<ul>
<li>faster lighting
<li>faster 16-bit TrueColor rendering on Linux
<li>faster 32-bit TrueColor rendering on Linux, HP, IBM
<li>non-depth-buffered XImage polygons are faster
<li>vertex array extension
<li>software alpha planes
<li>updated Macintosh driver
<li>new NeXT driver
<li>GLU quadric functions generate texture coordinates
<li>reflect.c demo - reflective, textured surface demo
</ul>
Changes:
<ul>
<li>gamma correction code moved into the X driver for better performance
</ul>
Bug fixes:
<ul>
<li>multiple glClipPlane()'s didn't work reliably
<li>glPolygonMode() didn't always work
<
li>glCullFace
( GL_FRONT_AND_BACK
) didn
't work
<li>texture mapping with gamma correction was buggy
<li>floating point exceptions in texture coordinate interpolation
<li>XImage byte swapping didn't always work
<
li>polygon edge flags weren
't always used correctly
</ul>
<h2>1.2.8 May 22, 1996</h2>
New:
<ul>
<li>overlay planes on X servers with the SERVER_OVERLAY_VISUALS property
<li>better monochrome output
<li>more IRIX 6.x configurations
<li>more robust RGB mode color allocation
<li>added MESA_XSYNC environment variable
<li>GLX_MESA_pixmap_colormap and GLX_EXT_visual_info extensions
<li>GL_MESA_window_pos extension
<li>faster glReadPixels/glDrawPixels for GL_DEPTH and GL_UNSIGNED_SHORT
and GL_UNSIGNED_INT
<li>driver for prototype Cirrus Mondello 3-D board
<li>updated AmigaDOS driver
<li>a few small speed optimizations in polygon rendering
</ul>
Changes:
<ul>
<li>internal device driver interface modified to simplify device
driver implementations and to support hardware Z buffers
<li>several changes to the X/Mesa interface (xmesa.h)
</ul>
Bug fixes:
<ul>
<li>fixed pow(0,0) domain error triggered on some systems
<li>glStencilClear() in a display list caused an infinite loop
<li>glRasterPos*() was sometimes off by +/-0.5 in X and Y
<li>color masking and blending were performed in wrong order
<li>auxSolidCylinder() sometimes drew a wire-frame cylinder
<li>fixed file writing bug in osdemo.c
<li>pixel mapping didn't always work
<
li>the GL_GEQUAL stencil func didn
't work
<li>the GL_INVERT stencil op didn't work
<
li>the stencil write mask didn
't work
<li>glPush/PopAttrib() didn't do enough error checking
<
li>glIsList
() didn
't always work correctly
</ul>
<h2>2.0 October 10, 1996</h2>
New:
<ul>
<li>Implements OpenGL 1.1 API functions
<li>all texture filtering modes supported (mipmapping)
<li>faster texture mapping, see Performance Tip 11 in README
<li>antialiased RGB points
<li>X support for line and polygon stippling
<li>glDrawBuffer( GL_FRONT_AND_BACK ) works
<li>util/ directory of useful stuff
<li>demos/texobj demo of texture objects
</ul>
Changes:
<ul>
<li>major internal changes for thread-safeness
<li>new device driver interface
<li>MESA_ALPHA env variable removed
<li>triangle rasterizer replaces polygon rasterizer
</ul>
Bug fixes:
<ul>
<li>glPopAttrib() bug
<li>glDrawBuffer(GL_NONE) works now
</ul>
<h2>2.1 December 14, 1996</h2>
New:
<ul>
<li>VMS support
<li>MS-DOS driver
<li>OpenStep support
<li>updated, combined Windows 95/NT driver
<li>implemented glGetLighti() and glGetTexGen*()
<li>GLX does garbage collection of ancillary buffers
</ul>
Bug fixes:
<ul>
<li>removed unused _EXT constants from gl.h
<li>fixed polygon offset bugs
<li>Z coordinates of clipped lines were incorrect
<li>glEdgeFlag() in display lists didn't always work
<
li>glLight*
() in display lists didn
't work
<li>fixed X line stipple bugs (Michael Pichler)
<li>glXUseXfonts XFreeFont/XFreeFontInfo bug fixed
<li>fixed a feedback bug
<li>glTexGen*() now transforms GL_EYE_PLANE by inverse modelview matrix
<li>polygons were sometimes culled instead of clipped
<li>triangle rasterizer suffered from float/int overflow exceptions
<li>fixed FP underflow exception in lighting (specular exponent)
<li>glEnable/glDisable of GL_EXT_vertex_array enums didn't work
<
li>fixed free
(NULL
) in GLU tesselator
code
<
li>using
24-bit
color on some X servers resulted in garbage rendering
<
li>
32-bit per pixel mode
for XFree86 now works
<
li>glRotate
(a,
0,
0,
0) gave unpredictable results
<
li>GL_LINE_STRIP with >
480 vertices had occasional clipping problems
<
li>
8-bit TrueColor GLXPixmap rendering incorrectly required a colormap
<
li>glMaterial
() wasn
't ignored when GL_COLOR_MATERIAL was enabled
<li>glEnable(GL_COLOR_MATERIAL) followed by glColor() didn't work right
<
li>accumulation buffer was limited to positive values
<
li>projective textures didn
't work
<li>selection buffer overflows weren't handled correctly
Changes:
<
li>restored the GL_EXT_polygon_offset extension
<
li>slightly faster RGB dithering
<
li>the SVGA driver works again
<
li>Amiga driver now distributed separately
<
li>NeXT driver updated
for Mesa
2.x
<
h2>
2.2 March
14,
1997<
/h2>
New:
<
li>better
color selection when dithering
<
li>added GL_EXT_texture_object extension
<
li>updated MS-DOS driver
for DJGPP
<
li>added openbsd make configuration
<
li>faster dithered flat-shaded triangles
<
li>various compilation problems with Motif widgets fixed
<
li>gl.h, glx.h and glu.h
name mangling option
<
li>3D texture mapping extension
<
li>GL_MESA_resize_buffers extension
<
li>morph3d, stex3d and spectex demos
Bug fixes:
<
li>glColorMaterial should finally work right in all respects
<
li>linear interpolation of mipmap levels was incorrectly weighted
<
li>readpix.c didn
't compile on Macintosh
<li>GL_INVERT and related logic ops didn't work right
<
li>glTexImage
[12]D
() didn
't check its parameters consistantly
<li>fixed a memory leak in glTexImage[12]D()
<li>kludged around a SunOS 5.x/GCC compiler bug in the feedback code
<li>glReadPixels aborted instead of normally catching some errors
<li>a few 1.1 constants were missing or misnamed in gl.h
<li>glBegin(p); glBegin(q); didn't generate an error
<
li>fixed a memory leak in GLX
code
<
li>clipping of concave polygons could cause a core dump
<
li>
1-component alpha texture maps didn
't work
<li>fixed a GLU polygon tesselator bug
<li>polygons with colinear vertices were sometimes culled
<li>feedback triangle colors were wrong when using smooth shading
<li>textures with borders didn't work correctly
<
li>colors returned in feedback mode were wrong when using lighting
<
li>spotlights didn
't effect ambient lighting correctly
<li>gluPartialDisk() had a few bugs
</ul>
Changes:
<ul>
<li>device driver interface expanded to support texture mapping
<li>faster matrix inversion subroutine
<li>commented out #include "wmesa_extend.h" from src/wmesa.c
<li>fixed many compiler warnings in the demo programs
</ul>
<h2>2.3 June 30, 1997</h2>
New:
<ul>
<li>Mesa distribution divided into two pieces: library code and demos
<li>faster vertex transformation, clip testing, lighting
<li>faster line drawing
<li>TrueColor visuals how have dithering (for depths < 24 bits)
<li>added MESA_NO_DITHER environment variable
<li>new device driver function: NearFar(), RenderVB(), RasterSetup()
<li>added LynxOS configuration
<li>added cygnus Win32 configuration
<li>added texcyl.c GLUT demo
<li>added XMesaDitherColor() to X/Mesa interface
<li>new NURBS code from Bogdan Sikorski
<li>added demos/shape.c (non-rectangular X window!)
</ul>
Bug fixes:
<ul>
<li>glEnable/DisableClientState() were missing from GL/gl.h
<li>GL_SPHERE_MAP texcoord generation didn't work correctly
<
li>glXGetConfig
() returned wrong number of depth, stencil, accum bits
<
li>glDrawPixels feedback
/selection didn
't examine RasterPos valid bit
<li>black and white were reversed on some monochrome displays
<li>fixed potential image memory leak (wasn't setting reference counter)
<
li>glDrawPixels sometimes didn
't recognize some GL state changes
<li>gluProject/UnProject() didn't check for divide by zero
<
li>stex3d demo called random
() and srandom
(), not portable
<
li>fixed memory leaks in context.c and drawpix.c
<
li>fixed NULL dereferencing problem in gl_update_texture_state
()
<
li>glReadPixels between glBegin
/glEnd didn
't generate an error.
<li>fixed memory leak in polygon tesselator (Randy Frank)
<li>fixed seg fault bug drawing flat-shaded, depth-tested lines
<li>clipped GL_TRIANGLE_STRIPs sometimes had wrong color when flat-shaded
<li>glBindTexture sometimes didn't work
<
li>fixed a bug deep in glXReleaseBuffersMESA
()
<
li>fog was mistakenly applied to alpha
<
li>glPopMatrix didn
't set "dirty matrix" flag
<li>glPolygonStipple pattern was sometimes wrong
<li>glClear wasn't disabled during feedback and selection
<
li>fixed memory leak in glTexSubImage
[123]D
Changes:
<
li>many library source files reorganized
<
li>faster X
color allocation, colors also freed when finished with them
<
li>new texture sampling function pointer in texture objects
<
li>incorporated 3Dfx VooDoo driver v0.16 into main source tree
<
li>many 3Dfx driver updates
<
li>cygnus Makefiles now included
<
li>made a few changes to dosmesa.c and wmesa.c
(VB->Unclipped
)
<
li>internally, colors now stored in GLubytes, not GLfixed
<
li>optimized changing of GL_SHININESS parameter
<
h2>
2.4 September
18,
1997<
/h2>
New:
<
li>updated 3Dfx Glide driver
<
li>hacks
for 3Dfx rendering into an X window or fullscreen
<
li>added depth buffer access functions to X
/Mesa and OS
/Mesa interfaces
Bug fixes:
<
li>pixel buffer could overflow with long, wide lines
<
li>fixed FP underflow problems in lighting
<
li>glTexSubImage1D
() had an unitialized variable
<
li>incomplete texture objects could cause a segfault
<
li>glDrawPixels with GL_COMPILE_AND_EXECUTE caused infinite loop
<
li>flat-shaded quads in a strip were miscolored if clipped
<
li>mipmapped triangle lod computation now works correctly
<
li>fixed a few under
/overflow bugs in triangle rasterizer
<
li>glArrayElement
() assigned bad normal if normal array
disabled
<
li>changed argument to glXReleaseBuffersMESA
()
<
li>fixed small triangle underflow bugs in tritemp.h
(hopefully
)
<
li>glBindTexture
(target,
0) caused a crash
<
li>glTexImage
[123]D
() with NULL image pointer caused crash
<
li>glPixelStore parameters are now ignored during display list execution
<
li>fixed a two-sided lighting w
/ clipping bug
(black vertices
)
<
li>textures with
width!
=height were sometimes mis-rendered
<
li>
"weird" projection matrices could cause div by
0, other fp errors
Changes:
<
li>changed precompiled header symbol from PCH to PC_HEADER
<
li>split api.c into api1.c and api2.c
<
li>added hash.c source file
(but not used yet
)
<
li>a few Sun and HP configuration file changes
<
li>MESA_GLX_FX env var replaces MESA_FX_WINDOW and MESA_FX_FULLSCREEN
<
li>fixed a few cygnus build problems
(src/Makefile.cygnus,
src/wmesa.c
)
<
h2>
2.5 November
20,
1997<
/h2>
New:
<
li>updated 3Dfx driver
(v20
) for GLQuake
<
li>added GL_EXT_paletted_texture extension
<
li>added GL_EXT_shared_texture_palette extension
<
li>added GL_EXT_point_parameters extension
<
li>now including Mark Kilgard
's GLUT library v3.6
<li>new GLUT-based demos in gdemos/
<li>added a few more Unix config targets
<li>added Intel X86 assembly language vertex transformation code
<li>3Dfx/Glide driver for Mesa now recognizes SST_SCREENREFRESH env var
<li>Windows 95 S3 Virge driver
</ul>
Bug fixes:
<ul>
<li>glCopyTexImage?D would crash due to uninitialized variable
<li>glColor w/ glColorMaterial in a display list caused a bug
<li>fixed several glDrawPixels() and ReadPixels() bugs in 3Dfx driver
<li>glVertex4*() vertices weren't always projected correctly
<
li>trying to use mipmapped textured points or lines caused crash
<
li>glColor
[34][fd
]() values now clamped to
[0,
1] before int conversion
Changes:
<
li>new device driver functions
for texture mapping
<
li>hash tables used
for display list and texture
object lookup
<
li>fixed GLX visual handling
code to avoid saving redundant visuals
<
li>3Dfx Glide libraries automatically linked to libMesaGL.so
<
li>dropped the Cirrus Logic Mondello
code since it
's obsolete
<li>updated Cygnus Makefiles (Stephane Rehel)
<li>updated Windows MSVC++ Makefiles (Oleg Letsinsky)
<li>procedure for making library files has changed: scripts now take
a major and minor version arguments. Make-config changed a lot.
<li>new implementation of glTexSubImage2D()
<li>updated widgets-mesa directory to create libMesaGLwM.a (Motif widget)
<li>separate linux-glide and linux-386-glide configurations
</ul>
<h2>2.6 February 12, 1998</h2>
New:
<ul>
<li>Windows WGL functions
<li>updated VMS, DOS, Windows, Cygnus, BeOS, Amiga compilation support
<li>v0.22 of 3Dfx Glide driver
<li>more X86 assembly language optimizations
<li>faster blending for some modes
<li>XMesaSetFXmode() to switch between 3Dfx window and full-screen mode
<li>added preliminary thread support
<li>added GLX_MESA_copy_sub_buffer extension
<li>some clipping optimizations
</ul>
Bug fixes:
<ul>
<li>fixed shading/material bug when drawing long primitive strips
<li>fixed clipping problem in long primitive strips
<li>fixed clipping bug when using 3Dfx driver
<li>fixed a problem when trying to use X fonts w/ 3Dfx driver
<li>fixed a texture filter bug in 3Dfx/Glide driver
<li>fixed bug in 3Dfx/Glide driver involving depth mask & clearing
<li>glLoadMatrix to set projection matrix confused the 3Dfx driver
<li>non-identity texture matrices didn't work with linux-386 configs
<
li>glGenTextures
() didn
't reserve the returned texture IDs
<li>NULL proxy image sent to glTexImageXD() caused crash
<li>added texture state validation optimization (Henk Kok)
<li>fixed colormap reuse problem when using both RGB and CI windows
<li>32bpp True/DirectColor X visuals weren't recognized
<
li>fixed potential problem in evaluators memory allocation
<
li>fixed assorted demo compilation bugs
Changes:
<
li>replaced old Mesa
/windows
/ directory with Mesa
/WIN32
/ directory
<
li>converted a few old glaux
/gltk demos to GLUT
<
li>renamed directories: demos -> xdemos, gdemos -> demos
<
h2>
3.0 September
17,
1998<
/h2>
New:
<
li>GL_EXT_abgr pixel format extension
<
li>GL_SGIS_texture_edge_clamp extension
<
li>GL_SGIS_multitexture extension
(to be replaced by GL_ARB_multitex
)
<
li>GL_EXT_multitexture extension
(to be replaced by GL_ARB_multitex
)
<
li>GL_EXT_rescale_normal extension and renormal.c demo
<
li>GLX_SGI_video_sync extension
(a no-op
)
<
li>glGetTexImage
() now implemented
<
li>glDraw
/Copy
/ReadPixels
() optimizations
<
li>optimized textured triangle
code (Marten Stromberg
)
<
li>more optimization of dithered TrueColor triangles in X driver
Bug fixes:
<
li>lots of assorted compilation fixes
<
li>glInitNames didn
't write initial hit record
<li>glBitmap didn't always check for invalid raster position
<
li>switching between GLX and OSMesa contexts caused a crash
<
li>fixed uninitialized variable in Mesa widget
code
<
li>fixed typo in texture
code which caused book
/texgen to crash
<
li>fixed texture sampling bug when filter
=GL_LINEAR and wrap
=GL_CLAMP
<
li>gluDisk
() in POINT or LINE mode sometimes failed
<
li>fixed texture + fog bug
<
li>GL_COMPILE_AND_EXECUTE mode didn
't work reliably
<li>glMultMatrix in projection matrix mode w/ 3Dfx driver could fail
<li>glDrawPixels(color index pixels) weren't converted to RGBA
<
li>fixed possible getenv
() buffer overflow security bug
<
li>glBitmap in feedback mode was offset by xOrig, yOrig params
<
li>device driver
's DrawPixels hook was never used
<li>glDrawPixels with zoomY!=1 and top/bottom clipping didn't work
<
li>glDrawPixels optimized
for GL_LUMINANCE, GL_LUMINANCE_ALPHA, GLubyte
<
li>fixed MakeCurrent bug in GLwRedrawObjects
() in MesaWorkstation.c
<
li>glCopyTexSubImage2D
() didn
't work with 3Dfx driver
<li>lines with width = 2 could cause crash
<li>glClear with scissor rect sometimes cleared whole buffer
<li>glTexSubImage2D( .. GL_COLOR_INDEX .. ) didn't work
<
li>glTexImageXD
( .. GL_ABGR_EXT ..
) didn
't work
<li>computation of inverse modelview matrix sometimes failed
<li>fixed GL_CLAMP mode texture sampling bug
<li>textured line interpolation was somewhat broken
<li>textured triangle interpolation was also somewhat broken
<li>glGet(MODELVIEW/PROJECTION/TEXTURE_MATRIX_STACK_DEPTH) off by one
<li>evaluator state wasn't fully initialized
<
li>texture coordinate clipping was buggy
<
li>evaluator surfaces could be mis-colored
<
li>glAccum
(GL_RETURN, s
) didn
't obey glColorMask() settings
<li>zero area polygons shouldn't be culled if polygon mode is point/line
<
li>clipped
width and
height of glReadPixels was sometimes off by one
<
li>blending with alpha
= 0 or
1.0 wasn
't always exact
<li>reading of pixels from clipped region was buggy
<li>minor tweaking of X visual management in GLX emulator
<li>glPolygonStipple now obeys pixel unpacking parameters
<li>glGetPolygonStipple now obeys pixel packing parameters
<li>interleaved vertex array texture coordinates were broken
<li>query of proxy texture internal format was broken
<li>alpha channel wasn't reliably cleared
<
li>fixed divide by zero error in gluScaleImage if dest
size = 1 x
1
Conformance bug fixes:
<
li>GL_SELECTION_BUFFER_POINTER and GL_SELECTION_BUFFER_SIZE were missing
<
li>GL_TEXTURE_INTERNAL_FORMAT was missing
<
li>glGet*
(GL_POLYGON_STIPPLE
) was broken
<
li>glPush
/PopAttrib
() didn
't save/restore all texture state
<li>glBitmap in feedback mode didn't work
<
li>feedback of texture
coords didn
't always work
<li>glDrawPixels w/ format=GL_DEPTH_COMPONENT, type=GLbyte was broke
<li>glDrawPixels w/ format=GL_DEPTH_COMPONENT, type=GLubyte was broke
<li>glDrawPixels w/ format=GL_STENCIL_INDEX, type=GL_BITMAP was broke
</ul>
Changes:
<ul>
<li>upgraded GLUT to version 3.7
<li>only GL and GLU library code included in MesaLib.tar.gz
<li>GLUT and all demos now in MesaDemos.tar.gz
<li>glaux and gltk libraries removed
<li>IRIX -n32 and -64 libs go in lib32/ and lib64/ directories
</ul>
<h2>3.1 beta 1 November 19, 1998</h2>
New:
<ul>
<li>GL_EXT_stencil_wrap extension
<li>GL_INGR_blend_func_separate extension
<li>GL_ARB_multitexture extension
<li>GL_NV_texgen_reflection extension
<li>newly optimized vertex transformation code
<li>updated GLUT 3.7 code
<li>better precision when using 32-bit Z buffer
<li>Allegro DJGPP driver
</ul>
Bug fixes:
<ul>
<li>glCopyPixels between front/back buffers didn't copy alpha correctly
<
li>fixed out-of-bounds memory access in optimized
2-D texture
code
<
li>glPixelStorei didn
't accept GL_PACK/UNPACK_IMAGE_HEIGHT parameter
<li>glGet*() didn't accept GL_MAX_3D_TEXTURE_SIZE parameter
<
li>clipping of texture coordinates sometimes had bad R,Q values
<
li>GL_CLAMP_TO_EDGE texture sampling was off by
0.5 texels
<
li>glEdgeFlagPointer
() now takes a GLvoid * instead of GLboolean *
<
li>texture was sometimes applied twice with 3Dfx driver
<
li>glPush
/PopAttrib
() fouled up texture
object reference counts
<
li>glDeleteLists
(0, n
) caused assertion failure
<
li>bilinear texture sampling wasn
't accurate enough
<li>glClear w/ glDepthMask(GL_FALSE) didn't work right on 3Dfx
<
li>
color components were reversed on big endian
32 bpp X visuals
Changes:
<
li>removed GL_EXT_multitexture extension
<
h2>
3.1 beta
2 May
24,
1999<
/h2>
New:
<
li>multi-textured points and lines
(mjk@nvidia.com
)
<
li>optimized 24bpp X rendering
(bernd.paysan@gmx.de
)
<
li>added allegro support
(bernie-t@geocities.com
)
<
li>cleaned-up Windows-related stuff
(Ted Jump
)
<
li>minor stereo changes
(KendallB@scitechsoft.com
)
<
li>new BeOS driver which implements BGLView
class
<
li>new Direct3D driver
(see
src/D3D
)
<
li>more efficient filled gluCylinder
() function
<
li>utilities: util
/showbuffer.
[ch
] and util
/glstate.
[ch
]
<
li>fixed some IRIX compiler warnings
<
li>added support
for building Mesa in XFree86 with
SGI's GLX (kevin@precisioninsight.com)
</ul>
Bug fixes:
<ul>
<li>a variety of Windows/Mesa bug fixes (mjk@nvidia.com)
<li>packed pixel images weren't unpacked correctly
<
li>patches some win32 files in GLUT
(mjk@nvidia.com
)
<
li>glTexImage
[123]D
() didn
't accept internalFormat == GL_COLOR_INDEX
<li>fixed lighting bug in Keith's new shading code
<
li>fixed texture segfault seen in Lament screensaver
<
li>fixed miscellaneous low-memory bugs
<
li>glClear
(GL_COLOR_BUFFER_BIT
) with RGBA or CI masking was broken
<
li>GL_LINEAR sampling of 3D textures was broken
<
li>fixed SVR4
'cc' compiler macro problem
(dawes@xfree86.org
)
<
li>added GL_TEXTURE_PRIORITY fix
(keithh@netcomuk.co.uk
)
<
li>fixed wide point and wide line conformance bugs
(brianp
)
Changes:
<
li>some device driver changes
(see
src/dd.h
)
<
li>new copyright on core Mesa
code
<
h2>
3.1 beta
3 September
17,
1999<
/h2>
New:
<
li>optimized glAccum function
<
li>optimized 24bpp rendering in XMesa driver
<
li>GLU
1.2 polygon tessellator
Bug Fixes:
<
li>glGetTexLevelParameter wasn
't fully implemented
<li>glXUseXFont now handles multi-byte fonts
<li>glIsEnabled(GL_TEXTURE_2D / 3D) returned wrong result
<li>alpha channel of blending points, lines was sometimes incorrect
</ul>
Changes:
<ul>
<li>New library names: "libGL" instead of "libMesaGL"
<li>New library numbering: libGL.so.1.2.310
<li>New subdirectories: docs/ and bin/
<li>New Makefile-system (autoconf,automake,libtool)
</ul>
<h2>3.1 final December 14, 1999</h2>
New:
<ul>
<li>added demos/gloss.c
<li>added xdemos/glxdpyinfo.c
<li>added GLX_ARB_get_proc_address extension
<li>rewritten glTexImage code paths (faster, less memory, bug fixes)
</ul>
Bug Fixes:
<ul>
<li>several vertex array bug fixes
<li>overlapping glCopyPixels with pixel zooming now works
<li>glXUseXFont() bitmaps were vertically shifted by one pixel
<li>glCopyPixels with pixel zooming now works
</ul>
<h2>3.2 final April 24, 2000</h2>
Bug fixes:
<ul>
<li>fixed memcpy bugs in span.c
<li>fixed missing glEnd problem in demos/tessdemo.c
<li>fixed bug when clearing 24bpp Ximages
<li>fixed clipping problem found in Unreal Tournament
<li>fixed Loki's "ice bug" and "crazy triangles" seen in Heretic2
<
li>fixed Loki
's 3dfx RGB vs BGR bug
<li>fixed Loki's 3dfx smooth/flat shading bug in SoF
Changes:
<
li>updated docs
/README file
<
li>use bcopy
() optimizations on FreeBSD
<
li>re-enabled the optimized persp_textured_triangle
() function
<
h2>3.2.1 July
19,
2000<
/h2>
Bug fixes:
<
li>gluBuild2DMipmaps
() didn
't accept GL_BGRA
<li>Fixed compile/makefile problems on IRIX
<li>fixed segfault in 3dfx driver when using GL selection/feedback
<li>no longer cull very, very tiny triangles
<li>blending w/ drawbuffer==GL_FRONT_BACK caused segfault (sw rendering)
<li>fixed Motif detection code in widgets-mesa/configure.in
<li>glColorMaterial and glMaterial updates to emissive and ambient
didn't always work right
<
li>Specular highlights weren
't always in the right place
<li>clipped GL_LINE mode polygons had interior lines appear
<li>blend term GL_ONE_MINUS_CONSTANT_ALPHA was broken
<li>GL_NICEST fog didn't always work with flat shading
<
li>glRect commands in display lists were sometimes miscolored
<
li>Line Z offset didn
't always work
<li>fixed texgen normal vector problem (gloss's teapot)
<
li>numerous GL conformance bugs fixed
Changes:
<
li>glColorMask
(false, false, false, false
) handled better
/faster
<
li>reverted to old GLU polygon tessellator, GLU
1.1
<
li>updated Win32 build files
<
h2>
3.3 July
21,
2000<
/h2>
New:
<
li>antialiased triangles now implemented
<
li>GL_EXT_texture_env_add texture mode extension
<
li>support
for separate draw
/read buffers
(ie GL_SGI_make_current_read
)
<
li>thread-safe API dispath
<
li>improved glxinfo program
<
li>demos
/texdown program to measure texture download performance
<
li>demos
/geartrain program
<
li>GL_EXT_texture_lod_bias extension
<
li>demos
/lodbias program
<
li>further optimized glRead
/DrawPixels
for 16-bit TrueColor X visuals
<
li>GLX_EXT_visual_rating extension
(a no-op, however
)
<
li>GL_HP_occlusion_test extension
(for X and OS
/Mesa drivers
)
<
li>demos
/occlude program
<
li>GL_SGIS_pixel_texture and GL_SGIX_pixel_texture extensions
<
li>demos
/pixeltex program
<
li>GL_SGI_color_matrix extension
<
li>GL_SGI_color_table extension
<
li>GL_EXT_histogram extension
<
li>GL_ARB_texture_cube_map extension
<
li>added xdemos
/glxheads and xdemos
/manywin
<
li>GL_EXT_texture_env_combine extension
(by Holger Waechtler
)
<
li>Xlib driver is now thread-safe
(see xdemos
/glthreads
)
Bug Fixes:
<
li>various GL conformance failures fixed since 3.2.1
Changes:
<
li>gl.h now uses #defines instead of C enums
for all tokens
<
li>glu.h now uses #defines instead of C enums
for all tokens
<
li>moved programs from 3Dfx
/demos
/ into demos
/ directory
<
h2>
3.4 November
3,
2000<
/h2>
New:
<
li>optimized glDrawPixels
for glPixelZoom
(1,-
1)
Bug Fixes:
<
li>widgets-mesa
/src/*.c files were missing from
3.3 distro
<
li>include
/GL
/mesa_wgl.h file was missing from
3.3 distro
<
li>fixed some Win32 compile problems
<
li>texture
object priorities weren
't getting initialized to 1.0
<li>glAreTexturesResident return value was wrong when using hardware
<li>glXUseXFont segfaulted when using 3dfx driver (via MESA_GLX_FX)
<li>glReadPixels with GLushort packed types was broken
<li>fixed a few bugs in the GL_EXT_texture_env_combine texture code
<li>glPush/PopAttrib(GL_ENABLE_BIT) mishandled multi-texture enables
<li>fixed some typos/bugs in the VB code
<li>glDrawPixels(GL_COLOR_INDEX) to RGB window didn't work
<
li>optimized glDrawPixels paths weren
't being used
<li>per-fragment fog calculation didn't work without a Z buffer
<
li>improved blending accuracy, fixes Glean blendFunc test failures
<
li>glPixelStore
(GL_PACK
/UNPACK_SKIP_IMAGES
) wasn
't handled correctly
<li>glXGetProcAddressARB() didn't always return the right address
<
li>gluBuild
[12]DMipmaps
() didn
't grok the GL_BGR pixel format
<li>texture matrix changes weren't always detected (GLUT projtex demo)
<
li>fixed random
color problem in vertex fog
code
<
li>fixed Glide-related bug that let Quake get a
24-bit Z buffer
Changes:
<
li>finished internal support
for compressed textures
for DRI
<
h2>3.4.1 February
14,
2001<
/h2>
New:
<
li>fixed some Linux build problems
<
li>fixed some Windows build problems
<
li>GL_EXT_texture_env_dot3 extension
(Gareth Hughes
)
Bug fixes:
<
li>added RENDER_START
/RENDER_FINISH macros
for glCopyTexImage in DRI
<
li>various state-update
code changes needed
for DRI bugs
<
li>
disabled pixel transfer ops in glColorTable commands, not needed
<
li>fixed bugs in glCopyConvolutionFilter1D
/2D, glGetConvolutionFilter
<
li>updated sources and fixed compile problems in widgets-mesa
/
<
li>GLX_PBUFFER enum
value was wrong in glx.h
<
li>fixed a glColorMaterial lighting bug
<
li>fixed bad args to Read
/WriteStencilSpan in h
/w stencil
clear function
<
li>glXCopySubBufferMESA
() Y position was off by one
<
li>Error checking of glTexSubImage3D
() was broken
(bug
128775)
<
li>glPopAttrib
() didn
't restore all derived Mesa state correctly
<li>Better glReadPixels accuracy for 16bpp color - fixes lots of OpenGL
conformance problems at 16bpp.
<li>clearing depth buffer with scissoring was broken, would segfault
<li>OSMesaGetDepthBuffer() returned bad bytesPerValue value
<li>fixed a line clipping bug (reported by Craig McDaniel)
<li>fixed RGB color over/underflow bug for very tiny triangles
</ul>
Known problems:
<ul>
<li>NURBS or evaluator surfaces inside display lists don't always work
<
h2>3.4.2 May
17,
2001<
/h2>
Bug fixes:
<
li>deleting the currently bound texture could cause bad problems
<
li>using fog could result in random vertex alpha values
<
li>AA triangle rendering could touch pixels outside right window bound
<
li>fixed byteswapping problem in clear_32bit_ximage
() function
<
li>fixed bugs in wglUseFontBitmapsA
(), by Frank Warmerdam
<
li>fixed memory leak in glXUseXFont
()
<
li>fragment sampling in AA triangle function was off by
1/2 pixel
<
li>Windows: reading pixels from framebuffer didn
't always work
<li>glConvolutionFilter2D could segfault or cause FP exception
<li>fixed segfaults in FX and X drivers when using tex unit 1 but not 0
<li>GL_NAND logicop didn't work right in RGBA mode
<
li>fixed a memory corruption bug in vertex buffer reset
code
<
li>clearing the softwara alpha buffer with scissoring was broken
<
li>fixed a few
color index mode fog bugs
<
li>fixed some bad assertions in
color index mode
<
li>fixed FX line
'stipple' bug #
420091
<
li>fixed stencil buffer
clear width/height typo
<
li>fixed GL error glitches in gl
[Client
]ActiveTextureARB
()
<
li>fixed Windows compilation problem in texutil.c
<
li>fixed
1/8-pixel AA triangle sampling error
Changes:
<
li>optimized writing mono-colored pixel spans to X pixmaps
<
li>increased max viewport
size to
2048 x
2048
<
h2>
3.5 June
21,
2001<
/h2>
New:
<
li>internals of Mesa divided into modular pieces
(Keith Whitwell
)
<
li>
100% OpenGL
1.2 conformance
(passes all conformance tests
)
<
li>new AA line algorithm
<
li>GL_EXT_convolution extension
<
li>GL_ARB_imaging subset
<
li>OSMesaCreateContextExt
() function
<
li>GL_ARB_texture_env_add extension
(same as GL_EXT_texture_env_add
)
<
li>GL_MAX_TEXTURE_UNITS_ARB now defaults to eight
<
li>GL_EXT_fog_coord extension
(Keith Whitwell
)
<
li>GL_EXT_secondary_color extension
(Keith Whitwell
)
<
li>GL_ARB_texture_env_add extension
(same as GL_EXT_texture_env_add
)
<
li>GL_SGIX_depth_texture extension
<
li>GL_SGIX_shadow and GL_SGIX_shadow_ambient extensions
<
li>demos
/shadowtex.c demo of GL_SGIX_depth_texture and GL_SGIX_shadow
<
li>GL_ARB_texture_env_combine extension
<
li>GL_ARB_texture_env_dot3 extension
<
li>GL_ARB_texture_border_clamp
(aka GL_SGIS_texture_border_clamp
)
<
li>OSMesaCreateContextExt
() function
<
li>libOSMesa.so library, contains the OSMesa driver interface
<
li>GL
/glxext.h header file
for GLX extensions
<
li>somewhat faster software texturing, fogging, depth testing
<
li>all color-index conformance tests now pass
(only 8bpp tested
)
<
li>SPARC assembly
language TCL optimizations
(David Miller
)
<
li>GL_SGIS_generate_mipmap extension
Bug Fixes:
<
li>fbiRev and tmuRev were unitialized when using Glide3
<
li>fixed a few
color index mode conformance failures; all pass now
<
li>now appling antialiasing coverage to alpha after texturing
<
li>colors weren
't getting clamped to [0,1] before color table lookup
<li>fixed RISC alignment errors caused by COPY_4UBV macro
<li>drawing wide, flat-shaded lines could cause a segfault
<li>vertices now snapped to 1/16 pixel to fix rendering of tiny triangles
</ul>
Changes:
<ul>
<li>SGI's Sample Implementation (SI) 1.3 GLU library replaces Mesa GLU
<
li>new libOSMesa.so library, contains the OSMesa driver interface
<
h2>
4.0 October
22,
2001<
/h2>
New:
<
li>Mesa
4.0 implements the OpenGL
1.3 specification
<
li>GL_IBM_rasterpos_clip extension
<
li>GL_EXT_texture_edge_clamp extension
(aka GL_SGIS_texture_edge_clamp
)
<
li>GL_ARB_texture_mirrored_repeat extension
<
li>WindML UGL driver
(Stephane Raimbault
)
<
li>added OSMESA_MAX_WIDTH
/HEIGHT queries
<
li>attempted compiliation fixes
for Solaris
5,
7 and
8
<
li>updated glext.h and glxext.h files
<
li>updated Windows driver
(Karl Schultz
)
Bug fixes:
<
li>added some missing GLX
1.3 tokens to include
/GL
/glx.h
<
li>GL_COLOR_MATRIX changes weren
't recognized by teximage functions
<li>glCopyPixels with scale and bias was broken
<li>glRasterPos with lighting could segfault
<li>glDeleteTextures could leave a dangling pointer
<li>Proxy textures for cube maps didn't work
<
li>fixed a number of
16-bit
color channel bugs
<
li>fixed a few minor memory leaks
<
li>GLX context sharing was broken in
3.5
<
li>fixed state-update bugs in glPopClientAttrib
()
<
li>fixed glDrawRangeElements
() bug
<
li>fixed a glPush
/PopAttrib
() bug related to texture binding
<
li>flat-shaded, textured lines were broken
<
li>fixed a dangling pointer problem in the XMesa
code (Chris Burghart
)
<
li>lighting didn
't always produce the correct alpha value
<li>fixed 3DNow! code to not read past end of arrays (Andrew Lewycky)
</ul>
<h2>4.0.1 December 17, 2001</h2>
New:
<ul>
<li>better sub-pixel sample positions for AA triangles (Ray Tice)
<li>slightly faster blending for (GL_ZERO, GL_ONE) and (GL_ONE, GL_ZERO)
</ul>
Bug fixes:
<ul>
<li>added missing break statements in glGet*() for multisample cases
<li>fixed uninitialized hash table mutex bug (display lists / texobjs)
<li>fixed bad teximage error check conditional (bug 476846)
<li>fixed demos readtex.c compilation problem on Windows (Karl Schultz)
<li>added missing glGet() query for GL_MAX_TEXTURE_LOD_BIAS_EXT
<li>silence some compiler warnings (gcc 2.96)
<li>enable the #define GL_VERSION_1_3 in GL/gl.h
<li>added GL 1.3 and GLX 1.4 entries to gl_mangle.h and glx_mangle.h
<li>fixed glu.h typedef problem found with MSDev 6.0
<li>build libGL.so with -Bsymbolic (fixes bug found with Chromium)
<li>added missing 'const' to glXGetContextIDEXT() in glxext.h
<li>fixed a few glXGetProcAddress() errors (texture compression, etc)
<li>fixed start index bug in compiled vertex arrays (Keith)
<li>fixed compilation problems in src/SPARC/glapi_sparc.S
<li>fixed triangle strip "parity" bug found in VTK medical1 demo (Keith)
<li>use glXGetProcAddressARB in GLUT to avoid extension linking problems
<li>provoking vertex of flat-shaded, color-index triangles was wrong
<li>fixed a few display list bugs (GLUT walker, molecule, etc) (Keith)
<li>glTexParameter didn't flush the vertex buffer (Ray Tice)
<
li>feedback attributes
for glDraw
/CopyPixels and glBitmap were wrong
<
li>fixed bug in normal length caching
(ParaView lighting bug
)
<
li>fixed separate_specular
color bug found in Chimera
(18 Dec
2001)
<
h2>4.0.2 April
2,
2002<
/h2>
New:
<
li>New DOS
(DJGPP
) driver written by Daniel Borca
<
li>New driver interface functions
for TCL drivers
(such as Radeon DRI
)
<
li>GL_RENDERER string returns
"Mesa Offscreen16" or
"Mesa Offscreen32"
if using deep color channels
<
li>latest GL
/glext.h and GL
/glxext.h
headers from SGI
Bug fixes:
<
li>GL_BLEND with non-black texture env
color wasn
't always correct
<li>GL_REPLACE with GL_RGB texture format wasn't always correct (alpha)
<
li>glTexEnviv
( pname !
= GL_TEXTURE_ENV_COLOR
) was broken
<
li>glReadPixels was sometimes mistakenly clipped by the scissor box
<
li>glDraw
/ReadPixels didn
't catch all the errors that they should have
<li>Fixed 24bpp rendering problem in Windows driver (Karl Schultz)
<li>16-bit GLchan mode fixes (m_trans_tmp.h, s_triangle.c)
<li>Fixed 1-bit float->int conversion bug in glDrawPixels(GL_DEPTH_COMP)
<li>glColorMask as sometimes effecting glXSwapBuffers()
<li>fixed a potential bug in XMesaGarbageCollect()
<li>N threads rendering into one window didn't work reliably
<
li>glCopyPixels didn
't work for deep color channels
<li>improved 8 -> 16bit/channel texture image conversion (Gerk Huisma)
<li>glPopAttrib() didn't correctly restore user clip planes
<
li>user clip planes failed
for some perspective projections
(Chromium
)
Known bugs:
<
li>mipmap LOD computation
<
h2>4.0.3 June
25,
2002<
/h2>
New:
<
li>updated GL
/glext.h file
(version 15)
<
li>corrected MMX blend
code (Jose Fonseca
)
<
li>support
for software-based alpha planes in Windows driver
<
li>updated GGI driver
(Filip Spacek
)
Bug fixes:
<
li>glext.h had wrong values
for GL_DOT3_RGB
[A
]_EXT tokens
<
li>OSMesaMakeCurrent
() didn
't recognize buffer size changes
<li>assorted conformance fixes for 16-bit/channel rendering
<li>texcombine alpha subtraction mode was broken
<li>fixed lighting bug with non-uniform scaling and display lists
<li>fixed bug when deleting shared display lists
<li>disabled SPARC cliptest assembly code (Mesa bug 544665)
<li>fixed a couple Solaris compilation/link problems
<li>blending clipped glDrawPixels didn't always work
<
li>glGetTexImage
() didn
't accept packed pixel types
<li>glPixelMapu[is]v() could explode given too large of pixelmap
<li>glGetTexParameter[if]v() didn't accept GL_TEXTURE_MAX_ANISOTROPY_EXT
<
li>glXCopyContext
() could lead to segfaults
<
li>glCullFace
(GL_FRONT_AND_BACK
) didn
't work (bug 572665)
</ul>
Changes:
<ul>
<li>lots of C++ (g++) code clean-ups
<li>lots of T&L updates for the Radeon DRI driver
</ul>
Known bugs:
<ul>
<li>mipmap LOD computation (fixed for Mesa 4.1)
</ul>
<h2>4.0.4 October 3, 2002</h2>
New:
<ul>
<li>GL_NV_texture_rectangle extension
<li>updated glext.h header (version 17)
<li>updated DOS driver (Daniel Borca)
<li>updated BeOS R5 driver (Philippe Houdoin)
<li>added GL_IBM_texture_mirror_repeat
<li>glxinfo now takes -l option to print interesting OpenGL limits info
<li>GL_MESA_ycbcr_texture extension
<li>GL_APPLE_client_storage extension (for some DRI drivers only)
<li>GL_MESA_pack_invert extension
</ul>
Bug fixes:
<ul>
<li>fixed GL_LINEAR fog bug by adding clamping
<li>fixed FP exceptions found using Alpha CPU
<li>3dfx MESA_GLX_FX=window (render to window) didn't work
<
li>fixed memory leak in wglCreateContest
(Karl Schultz
)
<
li>define GLAPIENTRY and GLAPI if undefined in glu.h
<
li>wglGetProcAddress didn
't handle all API functions
<li>when testing for OpenGL 1.2 vs 1.3, check for GL_ARB_texture_cube_map
<li>removed GL_MAX_CONVOLUTION_WIDTH/HEIGHT from glGetInteger/Float/etc()
<li>error checking in compressed tex image functions had some glitches
<li>fixed AIX compile problem in src/config.c
<li>glGetTexImage was using pixel unpacking instead of packing params
<li>auto-mipmap generation for cube maps was incorrect
</ul>
Changes:
<ul>
<li>max texture units reduced to six to accommodate texture rectangles
<li>removed unfinished GL_MESA_sprite_point extension code
</ul>
<h2>4.1 October 29, 2002</h2>
New:
<ul>
<li>GL_NV_vertex_program extension
<li>GL_NV_vertex_program1_1 extension
<li>GL_ARB_window_pos extension
<li>GL_ARB_depth_texture extension
<li>GL_ARB_shadow extension
<li>GL_ARB_shadow_ambient extension
<li>GL_EXT_shadow_funcs extension
<li>GL_ARB_point_parameters extension
<li>GL_ARB_texture_env_crossbar
<li>GL_NV_point_sprite extension
<li>GL_NV_texture_rectangle extension
<li>GL_EXT_multi_draw_arrays extension
<li>GL_EXT_stencil_two_side extension
<li>GLX_SGIX_fbconfig and GLX_SGIX_pbuffer extensions
<li>GL_ATI_texture_mirror_once extension (Ian Romanick)
<li>massive overhaul/simplification of software rasterizer module,
many contributions from Klaus Niederkrueger
<li>faster software texturing in some cases (i.e. trilinear filtering)
<li>new OSMesaGetProcAddress() function
<li>more blend modes implemented with MMX code (Jose Fonseca)
<li>added glutGetProcAddress() to GLUT
<li>added GLUT_FPS env var to compute frames/second in glutSwapBuffers()
<li>pbinfo and pbdemo PBuffer programs
<li>glxinfo -v prints transprent pixel info (Gerd Sussner)
</ul>
Bug fixes:
<ul>
<li>better mipmap LOD computation (prevents excessive blurriness)
<li>OSMesaMakeCurrent() didn't recognize buffer size changes
<
li>assorted conformance fixes
for 16-bit
/channel rendering
<
li>texcombine alpha subtraction mode was broken
<
li>fixed some blend problems when GLchan
==GLfloat
(Gerk Huisma
)
<
li>clamp colors to
[0,inf
] in OSMesa if GLchan
==GLfloat
(Gerk Huisma
)
<
li>fixed divide by zero error in NURBS tessellator
(Jon Perry
)
<
li>fixed GL_LINEAR fog bug by adding clamping
<
li>fixed FP exceptions found using Alpha CPU
<
li>3dfx
/glide driver render-to-window feature was broken
<
li>added missing GLX_TRANSPARENT_RGB token to glx.h
<
li>fixed error checking related to paletted textures
<
li>fixed reference count error in glDeleteTextures
(Randy Fayan
)
Changes:
<
li>New spec file and Python
code to generate some GL dispatch files
<
li>Glide driver defaults to
"no" with autoconf
/automake
<
li>updated demos
/stex3d with new options
<
h2>
5.0 November
13,
2002<
/h2>
New:
<
li>OpenGL
1.4 support
(glGetString
(GL_VERSION
) returns
"1.4")
<
li>removed some overlooked debugging
code
<
li>glxinfo updated to support GLX_ARB_multisample
<
li>GLUT now support GLX_ARB_multisample
<
li>updated DOS driver
(Daniel Borca
)
Bug fixes:
<
li>GL_POINT and GL_LINE-mode polygons didn
't obey cull state
<li>fixed potential bug in _mesa_align_malloc/calloc()
<li>fixed missing triangle bug when running vertex programs
<li>fixed a few HPUX compilation problems
<li>FX (Glide) driver didn't compile
<
li>setting GL_TEXTURE_BORDER_COLOR with glTexParameteriv
() didn
't work
<li>a few EXT functions, like glGenTexturesEXT, were no-ops
<li>a few OpenGL 1.4 functions like glFogCoord*, glBlendFuncSeparate,
glMultiDrawArrays and glMultiDrawElements were missing
<li>glGet*(GL_ACTIVE_STENCIL_FACE_EXT) was broken
<li>Pentium 4 Mobile was mistakenly identified as having 3DNow!
<li>fixed one-bit error in point/line fragment Z calculation
<li>fixed potential segfault in fakeglx code
<li>fixed color overflow problem in DOT3 texture env mode
</ul>
<h2>5.0.1 March 30, 2003</h2>
New:
<ul>
<li>DOS driver updates from Daniel Borca
<li>updated GL/gl_mangle.h file (Bill Hoffman)
Bug fixes:
<li>auto mipmap generation for cube maps was broken (bug 641363)
<li>writing/clearing software alpha channels was unreliable
<li>minor compilation fixes for OS/2 (Evgeny Kotsuba)
<li>fixed some bad assertions found with shadowtex demo
<li>fixed error checking bug in glCopyTexSubImage2D (bug 659020)
<li>glRotate(angle, -x, 0, 0) was incorrect (bug 659677)
<li>fixed potential segfault in texture object validation (bug 659012)
<li>fixed some bogus code in _mesa_test_os_sse_exception_support (Linus)
<li>fix fog stride bug in tnl code for h/w drivers (Michel Danzer)
<li>fixed glActiveTexture / glMatrixMode(GL_TEXTURE) bug (#669080)
<li>glGet(GL_CURRENT_SECONDARY_COLOR) should return 4 values, not 3
<li>fixed compilation problem on Solaris7/x86 (bug 536406)
<li>fixed prefetch bug in 3DNow! code (Felix Kuhling)
<li>fixed NeXT build problem (FABSF macro)
<li>glDrawPixels Z values when glPixelZoom!=1 were invalid (bug 687811)
<li>zoomed glDraw/CopyPixels with clipping sometimes failed (bug 689964)
<li>AA line and triangle Z values are now rounded, not truncated
<li>fixed color interpolation bug when GLchan==GLfloat (bug 694461)
<li>glArePrograms/TexturesResident() wasn't 100% correct (Jose Fonseca)
<
li>fixed a minor GL_COLOR_MATERIAL bug
<
li>NV vertex program EXP instruction was broken
<
li>glColorMask misbehaved with X window
/ pixmap rendering
<
li>fix autoconf
/libtool GLU C++ linker problem on Linux
(a total hack
)
<
li>attempt to fix GGI compilation problem when MesaDemos not present
<
li>NV vertex program ARL-relative fetches didn
't work
</ul>
Changes:
<ul>
<li>use glPolygonOffset in gloss demo to avoid z-fighting artifacts
<li>updated winpos and pointblast demos to use ARB extensions
<li>disable SPARC normal transformation code (bug 673938)
<li>GLU fixes for OS/2 (Evgeny Kotsuba)
</ul>
<h2>5.0.2 September 5, 2003</h2>
Bug fixes:
<ul>
<li>fixed texgen problem causing texcoord's Q to be zero (stex3d)
<
li>default GL_TEXTURE_COMPARE_MODE_ARB was wrong
<
li>GL_CURRENT_MATRIX_NV query was wrong
<
li>GL_CURRENT_MATRIX_STACK_DEPTH_NV query was off by one
<
li>GL_LIST_MODE query wasn
't correct
<li>GL_FOG_COORDINATE_SOURCE_EXT query wasn't supported
<
li>GL_SECONDARY_COLOR_ARRAY_SIZE_EXT query returned wrong
value
<
li>blended, wide lines didn
't always work correctly (bug 711595)
<li>glVertexAttrib4svNV w component was always 1
<li>fixed bug in GL_IBM_rasterpos_clip (missing return)
<li>GL_DEPTH_TEXTURE_MODE = GL_ALPHA didn't work correctly
<
li>a few Solaris compilation fixes
<
li>fixed glClear
() problem
for DRI drivers
(non-existant stencil, etc
)
<
li>fixed int
/REAL mixup in GLU NURBS curve evaluator
(Eric Cazeaux
)
<
li>fixed delete
[] bug in SI GLU
(bug
721765) (Diego Santa Cruz
)
<
li>glFog
() didn
't clamp fog colors
<li>fixed bad float/int conversion for GL_TEXTURE_PRIORITY in the
gl[Get]TexParameteri[v] functions
<li>fixed invalid memory references in glTexGen functions (bug 781602)
<li>integer-valued color arrays weren't handled correctly
<
li>glDrawPixels
(GL_DEPTH_COMPONENT
) with glPixelZoom didn
't work
<li>GL_EXT_texture_lod_bias is part of 1.4, overlooked in 5.0.1
</ul>
Changes:
<ul>
<li>build GLUT with -fexceptions so C++ apps propogate exceptions
</ul>
<h2>5.1 December 17, 2003</h2>
New:
<ul>
<li>reorganized directory tree
<li>GL_ARB_vertex/fragment_program extensions (Michal Krol & Karl Rasche)
<li>GL_ATI_texture_env_combine3 extension (Ian Romanick)
<li>GL_SGI_texture_color_table extension (Eric Plante)
<li>GL_NV_fragment_program extension
<li>GL_NV_light_max_exponent extension
<li>GL_EXT_texture_rectangle (identical to GL_NV_texture_rectangle)
<li>GL_ARB_occlusion_query extension
<li>GL_ARB_point_sprite extension
<li>GL_ARB_texture_non_power_of_two extension
<li>GL_IBM_multimode_draw_arrays extension
<li>GL_EXT_texture_mirror_clamp extension (Ian Romanick)
<li>GL_ARB_vertex_buffer_object extension
<li>new X86 feature detection code (Petr Sebor)
<li>less memory used for display lists and vertex buffers
<li>demo of per-pixel lighting with a fragment program (demos/fplight.c)
<li>new version (18) of glext.h header
<li>new spriteblast.c demo of GL_ARB_point_sprite
<li>faster glDrawPixels in X11 driver in some cases (see relnotes/5.1)
<li>faster glCopyPixels in X11 driver in some cases (see relnotes/5.1)
</ul>
Bug fixes:
<ul>
<li>really enable OpenGL 1.4 features in DOS driver.
<li>fixed issues in glDrawPixels and glCopyPixels for very wide images
<li>glPixelMapf/ui/usv()'s size parameter is GLsizei, not GLint
<
li>fixed some texgen bugs reported by Daniel Borca
<
li>fixed wglMakeCurrent
(NULL, NULL
) bug
(#
835861)
<
li>fixed glTexSubImage3D z-offset bug
(Cedric Gautier
)
<
li>fixed RGBA blend enable bug
(Ville Syrjala
)
<
li>glAccum is supposed to be a no-op in selection
/feedback mode
<
li>fixed texgen bug #
597589 (John Popplewell
)
Changes:
<
li>dropped API trace feature
(src/Trace
/)
<
li>documentation overhaul. merged with website
content. more html.
<
li>glxgears.c demo updated to use GLX swap rate extensions
<
li>glTexImage1
/2/3D now allows
width/height/depth
= 0
<
li>disable SPARC asm
code on Linux
(bug
852204)
<
h2>
6.0 January
16,
2004<
/h2>
New:
<
li>full OpenGL
1.5 support
<
li>updated GL
/glext.h file to
version 21
Changes:
<
li>changed max framebuffer
size to 4Kx4K
(MAX_WIDTH
/HEIGHT in config.h
)
Bug fixes:
<
li>fixed bug in UNCLAMPED_FLOAT_TO_UBYTE macro; solves a
color
clamping issue
<
li>updated suno5-gcc configs
<
li>glColor3 functions sometimes resulted in undefined alpha values
<
li>fixed FP divide by zero error seen on VMS with xlockmore, others
<
li>fixed vertex
/fragment program debug problem
(bug
873011)
<
li>building on AIX with gcc works now
<
li>glDeleteProgramsARB failed
for ARB fragment programs
(bug
876160)
<
li>glDrawRangeElements tried to modify potentially read-only storage
<
li>updated files
for building on Windows
<
h2>6.0.1 April
2,
2004<
/h2>
New:
<
li>upgraded glext.h to
version 22
<
li>new build targets
(Dan Schikore
)
<
li>new linux-x86-opteron build
target (Heath Feather
)
Bug fixes:
<
li>glBindProgramARB didn
't update all necessary state
<li>fixed build problems on OpenBSD
<li>omit CVS directories from tarballs
<li>glGetTexImage(GL_COLOR_INDEX) was broken
<li>fixed an infinite loop in t&l module
<li>silenced some valgrind warnings about using unitialized memory
<li>fixed some compilation/link glitches on IRIX (Mike Stephens)
<li>glBindProgram wasn't getting compiled into display lists
<
li>GLX_FBCONFIG_ID wasn
't recognized in glXChooseFBConfig() (bug 888079)
<li>two-sided lighting and vertex program didn't work (bug 887330)
<
li>stores to program parameter registers in vertex state programs
didn't work.
<li>fixed glOrtho bug found with gcc 3.2.2 (RH9)
<li>glXCreateWindow() wasn't fully implemented (bug 890894)
<
li>generic vertex attribute arrays didn
't work in display lists
<li>vertex buffer objects' default usage and access fields were wrong
<
li>glDrawArrays with
start!
=0 was broken
<
li>fragment program PK2H, UP2H, UP4B and UP4UB instructions were broken
<
li>linux-osmesa16-static config didn
't work
<li>fixed a few color index rendering problems (bug 910687)
<li>glInterleavedArrays didn't respect GL_CLIENT_ACTIVE_TEXTURE
<
li>OSMesa RGB and BGR modes were broken
<
li>glProgramStringARB mistakenly required a null-terminated string
<
li>fragment program XPD instruction was incorrect
<
li>glGetMaterial
() didn
't work reliably
<li>ARB_fragment_program KIL instruction was incorrect
</ul>
<h2>6.1 August 18, 2004</h2>
New:
<ul>
<li>Revamped Makefile system
<li>glXUseRotatedXFont() utility (see xdemos/xuserotfont.c)
<li>internal driver interface changes related to texture object
allocation, vertex/fragment programs, BlendEquationSeparate, etc.
<li>option to walk triangle edges with double-precision floats
(Justin Novosad of Discreet) (see config.h file)
<li>support for AUX buffers in software GLX driver
<li>updated glext.h to version 24 and glxext.h to version 6
<li>new MESA_GLX_FORCE_ALPHA and MESA_GLX_DEPTH_BITS env vars
<li>updated BeOS support (Philippe Houdoin)
</ul>
Changes:
<ul>
<li>fragment fog interpolation is perspective corrected now
<li>new glTexImage code, much cleaner, may be a bit faster
</ul>
Bug fixes:
<ul>
<li>glArrayElement in display lists didn't handle generic vertex attribs
<
li>glFogCoord didn
't always work properly
<li>ARB_fragment_program fog options didn't work
<
li>frag prog TEX instruction no longer incorrectly divides s,t,r by q
<
li>ARB frag prog TEX and TEXP instructions now use LOD
=0
<
li>glTexEnviv in display lists didn
't work
<li>glRasterPos didn't do texgen or apply texture matrix
<
li>GL_DOUBLE-valued vertex arrays were broken in some cases
<
li>fixed texture rectangle edge
/border sampling bugs
<
li>sampling an incomplete texture in a fragment program would segfault
<
li>glTexImage was missing a few error checks
<
li>fixed some minor glGetTexParameter glitches
<
li>GL_INTENSITY was mistakenly accepted as a <format> to glTexImage
<
li>fragment program writes to RC
/HC register were broken
<
li>fixed a few glitches in GL_HP_occlusion_test extension
<
li>glBeginQueryARB and glEndQueryARB didn
't work inside display lists
<li>vertex program state references were broken
<li>fixed triangle color interpolation bug on AIX (Shane Blackett)
<li>fixed a number of minor memory leaks (bug #1002030)
</ul>
<h2>6.2 October 2, 2004</h2>
New:
<ul>
<li>enabled GL_ARB_texture_rectangle (same as GL_NV_texture_rectangle)
<li>updated Doxygen support (Jose Fonseca)
</ul>
Changes:
<ul>
<li>some GGI driver updates (Christoph Egger, bug 1025977)
</ul>
Bug fixes:
<ul>
<li>Omit GL_ARB_texture_non_power_of_two from list of OpenGL 1.5 features
<li>fixed a few compilation issues on IRIX
<li>fixed a matrix classification bug (reported by Wes Bethel)
<li>we weren't reseting the vertex/fragment program error state
before parsing (Dave Reveman)
<
li>adjust texcoords
for sampling texture rectangles
(Dave Reveman
)
<
li>glGet*
(GL_MAX_VERTEX_ATTRIBS_ARB
) wasn
't implemented
<li>repeated calls to glDeleteTexture(t) could lead to a crash
<li>fixed potential ref count bugs in VBOs and vertex/fragment programs
<li>spriteblast demo didn't handle window size changes correctly
<
li>glTexSubImage didn
't handle pixels=NULL correctly for PBOs
<li>fixed color index mode glDrawPixels bug (Karl Schultz)
</ul>
<h2>6.2.1 December 9, 2004</h2>
Bug fixes:
<ul>
<li>don't apply regular fog or color sum when using a fragment program
<
li>glProgramEnvParameter4fARB always generated an error on
GL_FRAGMENT_PROGRAM_ARB (fdo bug 1645)
<
li>glVertexAttrib3svNV and glVertexAttrib3svARB were broken
<
li>fixed
width/height mix-up in glSeparableFilter2D
()
<
li>fixed regression in glCopyPixels + convolution
<
li>glReadPixels from a clipped front
color buffer didn
't always work
<li>glTexImage didn't accept GL_RED/GREEN/BLUE as the format
<
li>Attempting queries
/accesses of VBO
0 weren
't detected as errors
<li>paletted textures failed if the palette had fewer than 256 entries
</ul>
Changes:
<ul>
<li>fixed a bunch of compiler warnings found with gcc 3.4
<li>bug reports should to go bugzilla.freedesktop.org
</ul>
<h2>6.3 July 20, 2005</h2>
New:
<ul>
<li>GL_EXT_framebuffer_object extension
<li>GL_ARB_draw_buffers extension
<li>GL_ARB_pixel_buffer_object extension
<li>GL_OES_read_format extension (Ian Romanick)
<li>DirectFB driver (Claudio Ciccani)
<li>x86_64 vertex transformation code (Mikko T.)
<li>Updated GL/glext.h to version 29
</ul>
Changes:
<ul>
<li>added -stereo option for glxgears demo (Jacek Rosik)
<li>updated the PBuffer demo code in xdemos/ directory
<li>glDeleteTextures/Programs/Buffers() now makes the object ID
available for immediate re-use
<li>assorted 64-bit clean-ups fixes (x86_64 and Win64)
<li>lots of internal changes for GL_EXT_framebuffer_object
</ul>
Bug fixes:
<ul>
<li>some functions didn't support PBO functionality
<
li>glGetTexImage didn
't convert color index images to RGBA as required
<li>fragment program texcoords were sometimes wrong for points and lines
<li>fixed problem with negative dot product in arbfplight, fplight demos
<li>fixed bug in perspective correction of antialiased, textured lines
<li>querying GL_POST_CONVOLUTION_ALPHA_BIAS_EXT returned wrong value
<li>fixed a couple per-pixel fog bugs (Soju Matsumoto)
<li>glGetBooleanv(GL_FRAGMENT_PROGRAM_BINDING_NV) was broken
<li>fixed float parsing bug in ARB frag/vert programs (bug 2520)
<li>XMesaGetDepthBuffer() returned incorrect value for bytesPerValue
<li>GL_COLOR_MATERIAL with glColor3 didn't properly set diffuse alpha
<
li>glXChooseFBConfig
() crashed if attribList pointer was NULL
<
li>program state.light
[n
].spot.direction.w was wrong
value (bug
3083)
<
li>fragment program fog option required glEnable
(GL_FOG
) - wrong.
<
li>glColorTable
() could produce a Mesa implementation error
(bug
3135)
<
li>RasterPos could get corrupted by
color index rendering path
<
li>Removed bad XTranslateCoordinates call when rendering to Pixmaps
<
li>glPopAttrib
() didn
't properly restore GL_TEXTURE_GEN enable state
<li>fixed a few Darwin compilation problems
</ul>
<h2>6.3.1</h2>
<p>
This was an intermediate release for X.org which wasn't otherwise released.)
<
h2>6.3.2 August
19,
2005<
/h2>
New:
<
li>The distribution now includes the DRI drivers and GLX
code
Changes:
<
li>Made the DRI
"new" driver interface standard, remove old
code
Bug fixes:
<
li>GL_ARB_vertex
/fragment_shader were mistakenly listed in the
extensions string
<
li>negative relative addressing in vertex programs was broken
<
li>update
/fix SPARC assembly
code for vertex transformation
<
li>fixed memory leak when freeing GLX drawables
/renderbuffers
<
li>fixed display list memory leak
<
li>the GL_PIXEL_MAP_I_TO_I table is now floating point, not integer
<
li>wglGetProcAddress
() didn
't handle wgl-functions
<li>fixed glxext.h cross-compile issue (Colin Harrison)
<li>assorted DRI driver fixes
</ul>
<b>
NOTE: Changes for Mesa 6.4 and later are documented in the corresponding
<a href="relnotes.html">release notes</a> file.
</b>
</div>
</body>
</html>