17ec681f3SmrgMesa 6.5.3 Release Notes / April 27, 2007
27ec681f3Smrg=========================================
37ec681f3Smrg
47ec681f3SmrgMesa 6.5.3 is a development release with many changes and new features.
57ec681f3SmrgMesa 7.0 is expected to follow shortly.
67ec681f3Smrg
77ec681f3SmrgMD5 checksums
87ec681f3Smrg-------------
97ec681f3Smrg
107ec681f3Smrg::
117ec681f3Smrg
127ec681f3Smrg   39f33ea64e34e2d5b20640b008b57649  MesaLib-6.5.3.tar.gz
137ec681f3Smrg   46359457147c469745f24b5074a186f0  MesaLib-6.5.3.tar.bz2
147ec681f3Smrg   a8946fa861634ce15971396f47992c41  MesaLib-6.5.3.zip
157ec681f3Smrg   08e26948d57eaca74d02a530b2d8106e  MesaDemos-6.5.3.tar.gz
167ec681f3Smrg   8af91773ab2653fe537499676b05f2e8  MesaDemos-6.5.3.tar.bz2
177ec681f3Smrg   783f81b171bf89b0929abc894efd25a6  MesaDemos-6.5.3.zip
187ec681f3Smrg   9467d415388fe1ad82991fb20704b812  MesaGLUT-6.5.3.tar.gz
197ec681f3Smrg   360843e46b7ebb6909290b023f9b26fa  MesaGLUT-6.5.3.tar.bz2
207ec681f3Smrg   7686065e5c15a30de08a1610860b6840  MesaGLUT-6.5.3.zip
217ec681f3Smrg
227ec681f3SmrgShared library numbering
237ec681f3Smrg------------------------
247ec681f3Smrg
257ec681f3SmrgMesa 6.5.3 supports the OpenGL 2.0/2.1 API. However, the (unix) shared
267ec681f3Smrglibrary version is still 1.5 (i.e. libGL.so.1.5.xxxxxx). Bumping the
277ec681f3Smrgshared library version to 2.x would cause linking problems with existing
287ec681f3SmrgOpenGL applications. Since OpenGL 2.x is backward compatible with OpenGL
297ec681f3Smrg1.x the shared library version number doesn't have to be incremented
307ec681f3Smrg(which would indicate an incompatible ABI).
317ec681f3Smrg
327ec681f3SmrgOther OpenGL vendors name their OpenGL 2.x libraries libGL.so.1.0.xxxxx
337ec681f3Smrgfor the same reason.
347ec681f3Smrg
357ec681f3SmrgNew features
367ec681f3Smrg------------
377ec681f3Smrg
387ec681f3Smrg-  OpenGL 2.0 and 2.1 API support.
397ec681f3Smrg-  Entirely new Shading Language code generator. See the :doc:`Shading
407ec681f3Smrg   Language <../shading>` page for more information.
417ec681f3Smrg-  Much faster software execution of vertex, fragment shaders.
427ec681f3Smrg-  New vertex buffer object (vbo) infrastructure
437ec681f3Smrg-  Updated glext.h file (version 39)
447ec681f3Smrg-  Updated glxext.h file (version 19)
457ec681f3Smrg-  GL_MAX_DRAWBUFFERS is now 4 (software rendering) so "multiple render
467ec681f3Smrg   targets" are really supported.
477ec681f3Smrg
487ec681f3SmrgBug fixes
497ec681f3Smrg---------
507ec681f3Smrg
517ec681f3Smrg-  Fog was errantly applied when a fragment shader was enabled (bug
527ec681f3Smrg   9346)
537ec681f3Smrg-  glPush/PopClientAttrib didn't handle VBO bindings correctly (bug
547ec681f3Smrg   9445)
557ec681f3Smrg-  With 32-bit Z buffer, the fragment Z of lines and points was
567ec681f3Smrg   sometimes wrong.
577ec681f3Smrg-  GL_POST_CONVOLUTION_ALPHA_BIAS/SCALE was broken.
587ec681f3Smrg-  1D convolution state could effect 2D image transfers
597ec681f3Smrg-  Overlapping glCopyPixels with negative Y zoom didn't work (bug 10521)
607ec681f3Smrg-  Fixed a number of framebuffer/renderbuffer reference counting bugs
617ec681f3Smrg-  Fixed a few bugs in software-emulated alpha planes
627ec681f3Smrg-  Assorted minor bug fixes in glCopy/DrawPixels, glPixelZoom, etc.
637ec681f3Smrg-  Assorted DRI driver bug fixes.
647ec681f3Smrg-  Fixed a number of bugs that prevented "depth-peeling" rendering from
657ec681f3Smrg   working.
667ec681f3Smrg
677ec681f3SmrgInternal code changes
687ec681f3Smrg---------------------
697ec681f3Smrg
707ec681f3Smrg-  Old array_cache module replaced by new vbo module. All geometry
717ec681f3Smrg   rendering is now cast in the form of vertex buffer objects.
727ec681f3Smrg-  Massive changes to the Shading Language compiler and related state.
737ec681f3Smrg-  Vertex/fragment shaders are compiled into GPU instructions and
747ec681f3Smrg   programs very similar to GL_ARB_vertex/fragment_program.
757ec681f3Smrg-  Vertex and fragment programs are executed with the same code now.
767ec681f3Smrg-  The SSE-optimized vertex program path has been removed since it
777ec681f3Smrg   didn't support more than 12 temp registers, didn't support
787ec681f3Smrg   branching/looping, etc.
797ec681f3Smrg
807ec681f3SmrgTo Do (someday) items
817ec681f3Smrg---------------------
827ec681f3Smrg
837ec681f3Smrg-  Switch to freeglut
847ec681f3Smrg-  Fix linux-glide target/driver.
857ec681f3Smrg-  Improved lambda and derivative calculation for frag progs.
867ec681f3Smrg
877ec681f3SmrgDriver Status
887ec681f3Smrg-------------
897ec681f3Smrg
907ec681f3Smrg::
917ec681f3Smrg
927ec681f3Smrg   Driver         Status
937ec681f3Smrg   ----------------------  ----------------------
947ec681f3Smrg   DRI drivers     varies with the driver
957ec681f3Smrg   XMesa/GLX (on Xlib) implements OpenGL 2.1
967ec681f3Smrg   OSMesa (off-screen) implements OpenGL 2.1
977ec681f3Smrg   Windows/Win32       implements OpenGL 2.1
987ec681f3Smrg   Glide (3dfx Voodoo1/2)  implements OpenGL 1.3
997ec681f3Smrg   SVGA            unsupported
1007ec681f3Smrg   Wind River UGL      unsupported
1017ec681f3Smrg   DJGPP           unsupported
1027ec681f3Smrg   GGI         unsupported
1037ec681f3Smrg   BeOS            unsupported
1047ec681f3Smrg   Allegro         unsupported
1057ec681f3Smrg   D3D         unsupported
106