aboutsummaryrefslogtreecommitdiff
path: root/mesalib/docs/relnotes/5.1
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2013-06-04 09:07:26 +0200
committermarha <marha@users.sourceforge.net>2013-06-04 09:07:26 +0200
commit150771e7aabf4c864b0b970c5b8d773634793abe (patch)
tree3d544cc0d8d06dd70e843d6ca7e4b0ef421d2758 /mesalib/docs/relnotes/5.1
parentfbe681216618af573ce29ca03b382b39b5919a52 (diff)
downloadvcxsrv-150771e7aabf4c864b0b970c5b8d773634793abe.tar.gz
vcxsrv-150771e7aabf4c864b0b970c5b8d773634793abe.tar.bz2
vcxsrv-150771e7aabf4c864b0b970c5b8d773634793abe.zip
xwininfo fontconfig libX11 libXau libXdmcp libXext mesa libXinerama libxcb libxcb/xcb-proto libfontenc pixman xkbcomp mkfontscale xkeyboard-config git update 4 Jun 2013
xserver commit c21344add2fc589df83b29be5831c36a372201bd libxcb commit 9ae84ad187e2ba440c40f44b8eb21c82c2fdbf12 libxcb/xcb-proto commit bdfedfa57a13ff805580cfacafc70f9cc55df363 xkeyboard-config commit dad9ade4e83d1ef5a517fcc4cc9ad3a79b47acce libX11 commit 8496122eb00ce6cd5d2308ee54f64b68c378e455 libXdmcp commit 0b443c1b769b9c9a3b45b4252afe07e18b709ff4 libXext commit d8366afbb0d2e4fbb1e419b1187f490522270bea libfontenc commit 3acba630d8b57084f7e92c15732408711ed5137a libXinerama commit 6e1d1dc328ba8162bba2f4694e7f3c706a1491ff libXau commit 899790011304c4029e15abf410e49ce7cec17e0a xkbcomp commit ed582f4fccd4e23abcfba8b3b03649fea6414f44 pixman commit 2acfac5f8e097ee2ae225d986f981b55d65dd152 mkfontscale commit 19e2cb7c6a3ec2c5b1bc0d24866fa685eef0ee13 xwininfo commit ba0d1b0da21d2dbdd81098ed5778f3792b472e13 fontconfig commit cd9b1033a68816a7acfbba1718ba0aa5888f6ec7 mesa commit 7bafd88c153e395274b632e7eae4bc9fc3aec1d2
Diffstat (limited to 'mesalib/docs/relnotes/5.1')
-rw-r--r--mesalib/docs/relnotes/5.1279
1 files changed, 279 insertions, 0 deletions
diff --git a/mesalib/docs/relnotes/5.1 b/mesalib/docs/relnotes/5.1
new file mode 100644
index 000000000..59b7964a0
--- /dev/null
+++ b/mesalib/docs/relnotes/5.1
@@ -0,0 +1,279 @@
+
+ Mesa 5.1 release notes
+
+ December 17, 2003
+
+ PLEASE READ!!!!
+
+
+
+Introduction
+------------
+
+Mesa uses an even/odd version number scheme like the Linux kernel.
+Even-numbered versions (such as 5.0) designate stable releases.
+Odd-numbered versions (such as 5.1) designate new developmental releases.
+
+
+Bug fixes
+---------
+See the VERSIONS file for a list of bugs fixed in this release.
+
+
+
+New Features in Mesa 5.1
+------------------------
+
+GL_ARB_vertex_program / GL_ARB_fragment_program
+ Michal Krol and Karl Rasche implemented these extensions. Thanks!
+ Be aware that there may be some rough edges and lurking bugs.
+
+GL_ATI_texture_env_combine3 extension
+ This adds a few new texture combine modes.
+ Contributed by Ian Romanick.
+
+GL_SGI_texture_color_table
+ Adds a color table lookup to the RGBA texture path. There's a separate
+ color table for each texture unit.
+ Contributed by Eric Plante.
+
+GL_NV_fragment_program
+ NVIDIA's fragment-level programming feature.
+ Possible lurking bugs:
+ - the DDX and DDY commands aren't fully tested
+ - there may be bugs in the parser
+ - the TEX and TXP instructions both do perspective correction
+ - the pack/unpack instructions may not be correct
+
+GL_EXT_depth_bounds_test
+ This extension adds a scissor-like test for the Z axis. It's used to
+ optimize stencil-volume shadow algorithms.
+
+GL_NV_light_max_exponent
+ Lifts the 128 limit for max light exponent.
+
+GL_EXT_texture_rectangle
+ Identical to GL_NV_texture_rectangle
+
+GL_ARB_occlusion_query
+ Useful for visibility-based culling.
+
+GL_ARB_texture_non_power_of_two
+ Removes the restriction that texture dimensions must be powers of two.
+
+GL_ARB_vertex_buffer_object
+ Allows server-side vertex arrays, optimized host/card data transfers, etc.
+
+GL_ARB_point_sprite
+ ARB-approved version of GL_NV_point_sprite. Basically allows textures
+ to be applied to points.
+
+GL_IBM_multimode_draw_arrays
+ Allows multiple vertex arrays to be drawn with one call, including arrays
+ of different types of primitives.
+
+GL_SUN_multi_draw_arrays
+ An alias for GL_EXT_multi_draw_arrays, standard in OpenGL 1.4.
+
+Faster glDrawPixels / glCopyPixels in X11 driver
+ If your X screen is 32bpp, glDrawPixels to the front color buffer will
+ be accelerated (via XPutImage()) if the image format is GL_BGRA and the
+ type is GL_UNSIGNED_BYTE. No raster operations, such as depth test,
+ blend, fog, etc. can be enabled.
+
+ If your X screen is 16bpp, glDrawPixels to the front color buffer will
+ be accelerated (via XPutImage()) if the image format is GL_RGB and the
+ type is GL_UNSIGNED_SHORT_5_6_5. No raster operations, such as depth
+ test, blend, fog, etc. can be enabled.
+
+ glCopyPixels() calls for the front color buffer will be accelerated
+ (via XCopyArea()) if no raster operations, such as depth test, blend,
+ fog, pixel zoom, etc. are enabled.
+
+ The speed-up over typical software rendering is a factor of 10 for
+ glDrawPixels and 100 for glCopyPixels.
+
+
+With the addition of GL_ARB_occlusion_query, GL_ARB_vertex_buffer_object,
+GL_ARB_texture_non_power_of_two and GL_EXT_shadow_funcs, Mesa 5.1 supports
+all the new features of OpenGL 1.5. Mesa 6.0 (the next stable release)
+will advertise GL_VERSION = "1.5".
+
+
+
+Vertex/Fragment program debugger
+--------------------------------
+
+GL_MESA_program_debug is an experimental extension to support
+interactive debugging of vertex and fragment programs. See the
+docs/specs/OLD/MESA_program_debug.spec file for details.
+
+The bulk of the vertex/fragment program debugger is implemented
+outside of Mesa. The GL_MESA_program_debug extension just has minimal
+hooks for stopping running programs and inspecting programs.
+
+The progs/tests/debugger.c (only in CVS) program is an example of how
+the extension can be used. Presently, the debugger code and demo code
+is in the same file. Eventually the debugger code should be moved
+into a reusable module.
+
+As it is now, the demo lets you set breakpoings in vertex/fragment
+programs, single step, and print intermediate register values. It's
+basically just a proof of concept.
+
+
+
+Directory tree reorganization
+-----------------------------
+
+The directory structure for Mesa has been overhauled to improve its layout.
+All source code for Mesa, GLU, GLUT, etc is now under the src/ directory
+in appropriate subdirectories.
+
+The Mesa source code and drivers has been reorganized under src/mesa/.
+
+All demonstration programs and tests are now in subdirectories under progs/.
+
+
+
+Build System Changes
+--------------------
+
+The GNU automake/autoconf support has been removed. As it was, it seldom
+worked on anything but Linux. The Mesa developers aren't big fans of
+automake/autoconf/libtool and didn't have the time to maintain it.
+If someone wants to contribute new automake/autoconf support (and is
+willing to maintain it), it may be re-incorporated into Mesa, subject
+to some requirements.
+
+The "old style" makefile system has been updated:
+ 1. Make-config has been trimmed down to fewer, modern configurations.
+ 2. Most of the bin/mklib.* scripts have been rolled into a new "mklib"
+ script that works on all sorts of systems. There are probably some
+ bugs in it, but it's been tested on Linux, SunOS 5.8 and IRIX 6.5.
+ Improvements/contributes are greatly appreciated.
+ 3. The Makefile.X11 files have been cleaned up in various ways
+
+
+
+Source File Changes
+-------------------
+
+The mmath.[ch] files are obsolete. Their contents have been moved
+into the imports.[ch] and macros.[ch] files.
+
+The files related to vertex and fragment programming have changed.
+Old files:
+ vpexec.[ch]
+ vpparse.[ch]
+ vpstate.[ch]
+New files:
+ program.[ch] - generic ARB/NV program code
+ arbprogram.[ch] - ARB program API functions
+ arbfragparse.[ch] - ARB fragment program parsing
+ arbvertparse.[ch] - ARB vertex program parsing
+ arbparse.[ch] - ARB vertex/fragment parsing
+ arbparse_syn.h - vertex/fragment program syntax
+ nvprogram.[ch] - NV program API functions
+ nvvertprog.h - NV vertex program definitions
+ nvfragprog.h - NV fragment program definitions
+ nvvertparse.[ch] - NV vertex program parser
+ nvfragparse.[ch] - NV fragment program parser
+ nvvertexec.[ch] - NV vertex program execution
+ swrast/s_nvfragprog.[ch] - NV fragment program execution
+
+The files related to per-vertex handling have changed.
+Old files:
+ tnl/t_eval_api.c - old per-vertex code
+ tnl/t_imm_alloc.c - old per-vertex code
+ tnl/t_imm_api.c - old per-vertex code
+ tnl/t_imm_debug.c - old per-vertex code
+ tnl/t_imm_dlist.c - old per-vertex code
+ tnl/t_imm_elt.c - old per-vertex code
+ tnl/t_imm_eval.c - old per-vertex code
+ tnl/t_imm_exec.c - old per-vertex code
+ tnl/t_imm_fixup.c - old per-vertex code
+ tnl/t_vtx_sse.c - old per-vertex code
+ tnl/t_vtx_x86.c - old per-vertex code
+New files:
+ tnl/t_save_api.c - new per-vertex code
+ tnl/t_save_loopback.c - new per-vertex code
+ tnl/t_save_playback.c - new per-vertex code
+ tnl/t_vtx_eval.c - old per-vertex code
+
+Other new files:
+ bufferobj.[ch] - GL_ARB_vertex_buffer_object functions
+ version.h - defines the Mesa version info
+
+Other removed files:
+ swrast/s_histogram.[ch] - moved into src/histogram.c
+
+
+
+Other Changes
+-------------
+
+The ctx->Driver.CreateTexture function has been removed - it wasn't used.
+
+New device driver hook functions:
+ NewTextureObject - used to allocate struct gl_texture_objects
+ NewTextureImage - used to allocate struct gl_texture_images
+
+New ctx->Texture._EnabledCoordUnits field:
+ With the addition of GL_NV_fragment_program we may need to interpolate
+ various sets of texture coordinates even when the corresponding texture
+ unit is not enabled. That is, glEnable(GL_TEXTURE_xD) may never get
+ called but we still may have to interpolate texture coordinates across
+ triangles so that the fragment program will get them.
+ This new field indicates which sets of texture coordinates are needed.
+ If a bit is set in the ctx->Texture._EnabledUnits bitmask is set, the
+ same bit MUST be set in ctx->Texture._EnabledCoordUnits.
+
+The ctx->_TriangleCaps field is deprecated.
+ Instead of testing the DD_* bits in _TriangleCaps, you should instead
+ directly test the relevant state variables, or use one of the helper
+ functions like NEED_SECONDARY_COLOR() at the bottom of context.h
+ While testing _TriangleCaps bits was fast, it was kludgey, and setting
+ the bits in the first place could be error prone.
+
+New vertex processing code.
+ The code behind glBegin, glEnd, glVertex, glNormal, etc. has been
+ totally rewritten. It's a cleaner implementation now and should use
+ less memory. (Keith)
+
+
+
+To Do
+-----
+Add screen-awareness to fakeglx.c
+
+
+
+
+Device Driver Status
+--------------------
+
+A number of Mesa's software drivers haven't been actively maintained for
+some time. We rely on volunteers to maintain many of these drivers.
+Here's the current status of all included drivers:
+
+
+Driver Status
+---------------------- ---------------------
+XMesa (Xlib) implements OpenGL 1.4
+OSMesa (off-screen) implements OpenGL 1.4
+FX (3dfx Voodoo1/2) implements OpenGL 1.3
+SVGA implements OpenGL 1.3
+Wind River UGL implements OpenGL 1.3
+Windows/Win32 implements OpenGL 1.4
+DJGPP implements OpenGL 1.4
+GGI implements OpenGL 1.3
+BeOS implements OpenGL 1.4
+Allegro needs updating
+D3D needs updating
+
+Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the
+driver call the _mesa_enable_1_4_extensions() function.
+
+
+----------------------------------------------------------------------