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