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