VBO refcount and spriteblast fixes
[mesa.git] / docs / VERSIONS
index df8a221a933c985cf8f14d258912f60dd2862f0e..3f43f31776eab0d60b9c3e91d6b8126699f2e78f 100644 (file)
@@ -1,4 +1,3 @@
-$Id: VERSIONS,v 1.91 2002/06/26 02:36:34 brianp Exp $
 
 
 Mesa Version History
@@ -983,7 +982,36 @@ Mesa Version History
        - mipmap LOD computation (fixed for Mesa 4.1)
 
 
-4.1  Month, ??, 2002
+4.0.4  October 3, 2002
+    New:
+       - GL_NV_texture_rectangle extension
+       - updated glext.h header (version 17)
+       - updated DOS driver (Daniel Borca)
+       - updated BeOS R5 driver (Philippe Houdoin)
+       - added GL_IBM_texture_mirror_repeat
+       - glxinfo now takes -l option to print interesting OpenGL limits info
+       - GL_MESA_ycbcr_texture extension
+       - GL_APPLE_client_storage extension (for some DRI drivers only)
+       - GL_MESA_pack_invert extension
+    Bug fixes:
+       - fixed GL_LINEAR fog bug by adding clamping
+       - fixed FP exceptions found using Alpha CPU
+       - 3dfx MESA_GLX_FX=window (render to window) didn't work
+       - fixed memory leak in wglCreateContest (Karl Schultz)
+       - define GLAPIENTRY and GLAPI if undefined in glu.h
+       - wglGetProcAddress didn't handle all API functions
+       - when testing for OpenGL 1.2 vs 1.3, check for GL_ARB_texture_cube_map
+       - removed GL_MAX_CONVOLUTION_WIDTH/HEIGHT from glGetInteger/Float/etc()
+       - error checking in compressed tex image functions had some glitches
+       - fixed AIX compile problem in src/config.c
+       - glGetTexImage was using pixel unpacking instead of packing params
+       - auto-mipmap generation for cube maps was incorrect
+    Changes:
+       - max texture units reduced to six to accomodate texture rectangles
+       - removed unfinished GL_MESA_sprite_point extension code
+
+
+4.1  October 29, 2002
     New:
        - GL_NV_vertex_program extension
        - GL_NV_vertex_program1_1 extension
@@ -996,15 +1024,272 @@ Mesa Version History
        - GL_ARB_texture_env_crossbar
        - GL_NV_point_sprite extension
        - GL_NV_texture_rectangle extension
+       - GL_EXT_multi_draw_arrays extension
+       - GL_EXT_stencil_two_side extension
+       - GLX_SGIX_fbconfig and GLX_SGIX_pbuffer extensions
+       - GL_ATI_texture_mirror_once extension (Ian Romanick)
        - massive overhaul/simplification of software rasterizer module,
          many contributions from Klaus Niederkrueger
        - faster software texturing in some cases (i.e. trilinear filtering)
        - new OSMesaGetProcAddress() function
        - more blend modes implemented with MMX code (Jose Fonseca)
+       - added glutGetProcAddress() to GLUT
+       - added GLUT_FPS env var to compute frames/second in glutSwapBuffers()
+       - pbinfo and pbdemo PBuffer programs
+       - glxinfo -v prints transprent pixel info (Gerd Sussner)
     Bug fixes:
        - better mipmap LOD computation (prevents excessive blurriness)
        - OSMesaMakeCurrent() didn't recognize buffer size changes
        - assorted conformance fixes for 16-bit/channel rendering
        - texcombine alpha subtraction mode was broken
+       - fixed some blend problems when GLchan==GLfloat (Gerk Huisma)
+       - clamp colors to [0,inf] in OSMesa if GLchan==GLfloat (Gerk Huisma)
+       - fixed divide by zero error in NURBS tessellator (Jon Perry)
+       - fixed GL_LINEAR fog bug by adding clamping
+       - fixed FP exceptions found using Alpha CPU
+       - 3dfx/glide driver render-to-window feature was broken
+       - added missing GLX_TRANSPARENT_RGB token to glx.h
+       - fixed error checking related to paletted textures
+       - fixed reference count error in glDeleteTextures (Randy Fayan)
     Changes:
        - New spec file and Python code to generate some GL dispatch files
+       - Glide driver defaults to "no" with autoconf/automake
+       - updated demos/stex3d with new options
+
+
+5.0  November 13, 2002
+    New:
+       - OpenGL 1.4 support (glGetString(GL_VERSION) returns "1.4")
+       - removed some overlooked debugging code
+       - glxinfo updated to support GLX_ARB_multisample
+       - GLUT now support GLX_ARB_multisample
+       - updated DOS driver (Daniel Borca)
+    Bug fixes:
+       - GL_POINT and GL_LINE-mode polygons didn't obey cull state
+       - fixed potential bug in _mesa_align_malloc/calloc()
+       - fixed missing triangle bug when running vertex programs
+       - fixed a few HPUX compilation problems
+       - FX (Glide) driver didn't compile
+       - setting GL_TEXTURE_BORDER_COLOR with glTexParameteriv() didn't work
+       - a few EXT functions, like glGenTexturesEXT, were no-ops
+       - a few OpenGL 1.4 functions like glFogCoord*, glBlendFuncSeparate,
+         glMultiDrawArrays and glMultiDrawElements were missing
+       - glGet*(GL_ACTIVE_STENCIL_FACE_EXT) was broken
+       - Pentium 4 Mobile was mistakenly identified as having 3DNow!
+       - fixed one-bit error in point/line fragment Z calculation
+       - fixed potential segfault in fakeglx code
+       - fixed color overflow problem in DOT3 texture env mode
+
+
+5.0.1  March 30, 2003
+    New:
+       - DOS driver updates from Daniel Borca
+       - updated GL/gl_mangle.h file (Bill Hoffman)
+    Bug fixes:
+       - auto mipmap generation for cube maps was broken (bug 641363)
+       - writing/clearing software alpha channels was unreliable
+       - minor compilation fixes for OS/2 (Evgeny Kotsuba)
+       - fixed some bad assertions found with shadowtex demo
+       - fixed error checking bug in glCopyTexSubImage2D (bug 659020)
+       - glRotate(angle, -x, 0, 0) was incorrect (bug 659677)
+       - fixed potential segfault in texture object validation (bug 659012)
+       - fixed some bogus code in _mesa_test_os_sse_exception_support (Linus)
+       - fix fog stride bug in tnl code for h/w drivers (Michel Danzer)
+       - fixed glActiveTexture / glMatrixMode(GL_TEXTURE) bug (#669080)
+       - glGet(GL_CURRENT_SECONDARY_COLOR) should return 4 values, not 3
+       - fixed compilation problem on Solaris7/x86 (bug 536406)
+       - fixed prefetch bug in 3DNow! code (Felix Kuhling)
+       - fixed NeXT build problem (FABSF macro)
+       - glDrawPixels Z values when glPixelZoom!=1 were invalid (bug 687811)
+       - zoomed glDraw/CopyPixels with clipping sometimes failed (bug 689964)
+       - AA line and triangle Z values are now rounded, not truncated
+       - fixed color interpolation bug when GLchan==GLfloat (bug 694461)
+       - glArePrograms/TexturesResident() wasn't 100% correct (Jose Fonseca)
+       - fixed a minor GL_COLOR_MATERIAL bug
+       - NV vertex program EXP instruction was broken
+       - glColorMask misbehaved with X window / pixmap rendering
+       - fix autoconf/libtool GLU C++ linker problem on Linux (a total hack)
+       - attempt to fix GGI compilation problem when MesaDemos not present
+       - NV vertex program ARL-relative fetches didn't work
+    Changes:
+       - use glPolygonOffset in gloss demo to avoid z-fighting artifacts
+       - updated winpos and pointblast demos to use ARB extensions
+       - disable SPARC normal transformation code (bug 673938)
+       - GLU fixes for OS/2 (Evgeny Kotsuba)
+
+
+5.0.2  September 5, 2003
+    Bug fixes:
+       - fixed texgen problem causing texcoord's Q to be zero (stex3d)
+       - default GL_TEXTURE_COMPARE_MODE_ARB was wrong
+       - GL_CURRENT_MATRIX_NV query was wrong
+       - GL_CURRENT_MATRIX_STACK_DEPTH_NV query was off by one
+       - GL_LIST_MODE query wasn't correct
+       - GL_FOG_COORDINATE_SOURCE_EXT query wasn't supported
+       - GL_SECONDARY_COLOR_ARRAY_SIZE_EXT query returned wrong value
+       - blended, wide lines didn't always work correctly (bug 711595)
+       - glVertexAttrib4svNV w component was always 1
+       - fixed bug in GL_IBM_rasterpos_clip (missing return)
+       - GL_DEPTH_TEXTURE_MODE = GL_ALPHA didn't work correctly
+       - a few Solaris compilation fixes
+       - fixed glClear() problem for DRI drivers (non-existant stencil, etc)
+       - fixed int/REAL mixup in GLU NURBS curve evaluator (Eric Cazeaux)
+       - fixed delete [] bug in SI GLU (bug 721765) (Diego Santa Cruz)
+       - glFog() didn't clamp fog colors
+       - fixed bad float/int conversion for GL_TEXTURE_PRIORITY in the
+         gl[Get]TexParameteri[v] functions
+       - fixed invalid memory references in glTexGen functions (bug 781602)
+       - integer-valued color arrays weren't handled correctly
+       - glDrawPixels(GL_DEPTH_COMPONENT) with glPixelZoom didn't work
+       - GL_EXT_texture_lod_bias is part of 1.4, overlooked in 5.0.1
+    Changes:
+       - build GLUT with -fexceptions so C++ apps propogate exceptions
+
+
+5.1  December 17, 2003
+    New:
+       - reorganized directory tree
+       - GL_ARB_vertex/fragment_program extensions (Michal Krol & Karl Rasche)
+       - GL_ATI_texture_env_combine3 extension (Ian Romanick)
+       - GL_SGI_texture_color_table extension (Eric Plante)
+       - GL_NV_fragment_program extension
+       - GL_NV_light_max_exponent extension
+       - GL_EXT_texture_rectangle (identical to GL_NV_texture_rectangle)
+       - GL_ARB_occlusion_query extension
+       - GL_ARB_point_sprite extension
+       - GL_ARB_texture_non_power_of_two extension
+       - GL_IBM_multimode_draw_arrays extension
+       - GL_EXT_texture_mirror_clamp extension (Ian Romanick)
+       - GL_ARB_vertex_buffer_object extension
+       - new X86 feature detection code (Petr Sebor)
+       - less memory used for display lists and vertex buffers
+       - demo of per-pixel lighting with a fragment program (demos/fplight.c)
+       - new version (18) of glext.h header
+       - new spriteblast.c demo of GL_ARB_point_sprite
+       - faster glDrawPixels in X11 driver in some cases (see RELNOTES-5.1)
+       - faster glCopyPixels in X11 driver in some cases (see RELNOTES-5.1)
+    Bug fixes:
+       - really enable OpenGL 1.4 features in DOS driver.
+       - fixed issues in glDrawPixels and glCopyPixels for very wide images
+       - glPixelMapf/ui/usv()'s size parameter is GLsizei, not GLint
+       - fixed some texgen bugs reported by Daniel Borca
+       - fixed wglMakeCurrent(NULL, NULL) bug (#835861)
+       - fixed glTexSubImage3D z-offset bug (Cedric Gautier)
+       - fixed RGBA blend enable bug (Ville Syrjala)
+       - glAccum is supposed to be a no-op in selection/feedback mode
+       - fixed texgen bug #597589 (John Popplewell)
+    Changes:
+       - dropped API trace feature (src/Trace/)
+       - documentation overhaul.  merged with website content.  more html.
+       - glxgears.c demo updated to use GLX swap rate extensions
+       - glTexImage1/2/3D now allows width/height/depth = 0
+       - disable SPARC asm code on Linux (bug 852204)
+
+
+6.0  January 16, 2004
+    New:
+       - full OpenGL 1.5 support
+       - updated GL/glext.h file to version 21
+    Changes:
+       - changed max framebuffer size to 4Kx4K (MAX_WIDTH/HEIGHT in config.h)
+    Bug fixes:
+       - fixed bug in UNCLAMPED_FLOAT_TO_UBYTE macro; solves a color
+         clamping issue
+       - updated suno5-gcc configs
+       - glColor3 functions sometimes resulted in undefined alpha values
+       - fixed FP divide by zero error seen on VMS with xlockmore, others
+       - fixed vertex/fragment program debug problem (bug 873011)
+       - building on AIX with gcc works now
+       - glDeleteProgramsARB failed for ARB fragment programs (bug 876160)
+       - glDrawRangeElements tried to modify potentially read-only storage
+       - updated files for building on Windows
+
+
+6.0.1  April 2, 2004
+    New:
+       - upgraded glext.h to version 22
+       - new build targets (Dan Schikore)
+       - new linux-x86-opteron build target (Heath Feather)
+    Bug fixes:
+       - glBindProgramARB didn't update all necessary state
+       - fixed build problems on OpenBSD
+       - omit CVS directories from tarballs
+       - glGetTexImage(GL_COLOR_INDEX) was broken
+       - fixed an infinite loop in t&l module
+       - silenced some valgrind warnings about using unitialized memory
+       - fixed some compilation/link glitches on IRIX (Mike Stephens)
+       - glBindProgram wasn't getting compiled into display lists
+       - GLX_FBCONFIG_ID wasn't recognized in glXChooseFBConfig() (bug 888079)
+       - two-sided lighting and vertex program didn't work (bug 887330)
+       - stores to program parameter registers in vertex state programs
+         didn't work.
+       - fixed glOrtho bug found with gcc 3.2.2 (RH9)
+       - glXCreateWindow() wasn't fully implemented (bug 890894)
+       - generic vertex attribute arrays didn't work in display lists
+       - vertex buffer objects' default usage and access fields were wrong
+       - glDrawArrays with start!=0 was broken
+       - fragment program PK2H, UP2H, UP4B and UP4UB instructions were broken
+       - linux-osmesa16-static config didn't work
+       - fixed a few color index rendering problems (bug 910687)
+       - glInterleavedArrays didn't respect GL_CLIENT_ACTIVE_TEXTURE
+       - OSMesa RGB and BGR modes were broken
+       - glProgramStringARB mistakenly required a null-terminated string
+       - fragment program XPD instruction was incorrect
+       - glGetMaterial() didn't work reliably
+       - ARB_fragment_program KIL instruction was incorrect
+
+
+6.1  August 18, 2004
+    New:
+       - Revamped Makefile system
+       - glXUseRotatedXFont() utility (see xdemos/xuserotfont.c)
+       - internal driver interface changes related to texture object
+         allocation, vertex/fragment programs, BlendEquationSeparate, etc.
+       - option to walk triangle edges with double-precision floats
+         (Justin Novosad of Discreet) (see config.h file)
+       - support for AUX buffers in software GLX driver
+       - updated glext.h to version 24 and glxext.h to version 6
+       - new MESA_GLX_FORCE_ALPHA and MESA_GLX_DEPTH_BITS env vars
+       - updated BeOS support (Philippe Houdoin)
+    Changes:
+       - fragment fog interpolation is perspective corrected now
+       - new glTexImage code, much cleaner, may be a bit faster
+    Bug fixes:
+       - glArrayElement in display lists didn't handle generic vertex attribs
+       - glFogCoord didn't always work properly
+       - ARB_fragment_program fog options didn't work
+       - frag prog TEX instruction no longer incorrectly divides s,t,r by q
+       - ARB frag prog TEX and TEXP instructions now use LOD=0
+       - glTexEnviv in display lists didn't work
+       - glRasterPos didn't do texgen or apply texture matrix
+       - GL_DOUBLE-valued vertex arrays were broken in some cases
+       - fixed texture rectangle edge/border sampling bugs
+       - sampling an incomplete texture in a fragment program would segfault
+       - glTexImage was missing a few error checks
+       - fixed some minor glGetTexParameter glitches
+       - GL_INTENSITY was mistakenly accepted as a <format> to glTexImage
+       - fragment program writes to RC/HC register were broken
+       - fixed a few glitches in GL_HP_occlusion_test extension
+       - glBeginQueryARB and glEndQueryARB didn't work inside display lists
+       - vertex program state references were broken
+       - fixed triangle color interpolation bug on AIX (Shane Blackett)
+       - fixed a number of minor memory leaks (bug #1002030)
+
+
+6.2  Month, day, 2004
+    New:
+       - enabled GL_ARB_texture_rectangle (same as GL_NV_texture_rectangle)
+       - updated Doxygen support (Jose Fonseca)
+    Changes:
+       - some GGI driver updates (Christoph Egger, bug 1025977)
+    Bug fixes:
+       - Omit GL_ARB_texture_non_power_of_two from list of OpenGL 1.5 features
+       - fixed a few compilation issues on IRIX
+       - fixed a matrix classification bug (reported by Wes Bethel)
+       - we weren't reseting the vertex/fragment program error state
+         before parsing (Dave Reveman)
+       - adjust texcoords for sampling texture rectangles (Dave Reveman)
+       - glGet*(GL_MAX_VERTEX_ATTRIBS_ARB) wasn't implemented
+       - repeated calls to glDeleteTexture(t) could lead to a crash
+       - fixed potential ref count bugs in VBOs and vertex/fragment programs
+       - spriteblast demo didn't handle window size changes correctly