diff options
Diffstat (limited to 'nx-X11/extras/Mesa/docs/RELNOTES-5.1')
-rw-r--r-- | nx-X11/extras/Mesa/docs/RELNOTES-5.1 | 279 |
1 files changed, 0 insertions, 279 deletions
diff --git a/nx-X11/extras/Mesa/docs/RELNOTES-5.1 b/nx-X11/extras/Mesa/docs/RELNOTES-5.1 deleted file mode 100644 index aed6e102b..000000000 --- a/nx-X11/extras/Mesa/docs/RELNOTES-5.1 +++ /dev/null @@ -1,279 +0,0 @@ - - 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/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. - - ----------------------------------------------------------------------- |