RELNOTES-5.1 revision b17a722ca3989e8563ee04cb2939f4835f8a171e
1 2 Mesa 5.1 release notes 3 4 Month day, 2003 5 6 PLEASE READ!!!! 7 8 9 10Introduction 11------------ 12 13Mesa uses an even/odd version number scheme like the Linux kernel. 14Even-numbered versions (such as 5.0) designate stable releases. 15Odd-numbered versions (such as 5.1) designate new developmental releases. 16 17 18Bug fixes 19--------- 20See the VERSIONS file for a list of bugs fixed in this release. 21 22 23 24New Features in Mesa 5.1 25------------------------ 26 27New directory tree 28 The whole Mesa directory tree has been cleaned up and reorganized. 29 Some old stuff has been abandoned. Lots of non-Unix makefiles will 30 have to be updated. 31 32 For now, autoconf/automake support has been removed. New autoconf/automake 33 files will added if they meet certain criteria. 34 35 36GL_ATI_texture_env_combine3 extension 37 This adds a few new texture combine modes. 38 Contributed by Ian Romanick. 39 40GL_SGI_texture_color_table 41 Adds a color table lookup to the RGBA texture path. There's a separate 42 color table for each texture unit. 43 Contributed by Eric Plante. 44 45GL_NV_fragment_program 46 NVIDIA's fragment-level programming feature. 47 Possible lurking bugs: 48 - the DDX and DDY commands aren't fully tested 49 - there may be bugs in the parser 50 - the TEX and TXP instructions both do perspective correction 51 - the pack/unpack instructions may not be correct 52 53GL_EXT_depth_bounds_test 54 This extension adds a scissor-like test for the Z axis. It's used to 55 optimize stencil-volume shadow algorithms. 56 57GL_NV_light_max_exponent 58 Lifts the 128 limit for max light exponent. 59 60GL_EXT_texture_rectangle 61 Identical to GL_NV_texture_rectangle 62 63GL_ARB_occlusion_query 64 Useful for visibility-based culling. 65 66 67 68Build System Changes 69-------------------- 70 71The "old style" makefile system has been updated: 72 1. Make-config has been trimmed down to fewer, modern configurations. 73 2. Most of the bin/mklib.* scripts have been rolled into a new "mklib" 74 script that works on all sorts of systems. There are probably some 75 bugs in it, but it's been tested on Linux, SunOS 5.8 and IRIX 6.5. 76 Improvements/contributes are greatly appreciated. 77 3. The Makefile.X11 files have been cleaned up in various ways 78 79 80 81Source File Changes 82------------------- 83 84The mmath.[ch] files are obsolete. Their contents have been moved 85into the imports.[ch] and macros.[ch] files. 86 87The files related to vertex and fragment programming have changed. 88Old files: 89 vpexec.[ch] 90 vpparse.[ch] 91 vpstate.[ch] 92New files: 93 nvvertprog.h - NV vertex program definitions 94 nvfragprog.h - NV fragment program definitions 95 nvvertparse.[ch] - NV vertex program parser 96 nvfragparse.[ch] - NV fragment program parser 97 nvprogram.[ch] - NV program API functions 98 nvvertexec.[ch] - NV vertex program execution 99 swrast/s_nvfragprog.[ch] - NV fragment program execution 100 101Removed files: 102 swrast/s_historgram.[ch] - moved into src/histogram.c 103 104Other New files: 105 bufferobj.[ch] - GL_ARB_vertex_buffer_object functions 106 arbprogram.[ch] - GL_ARB_vertex/fragment_program functions 107 version.h - defines the Mesa version info 108 109 110Other Changes 111------------- 112 113The ctx->Driver.CreateTexture function has been removed - it wasn't used. 114 115New device driver hook functions: 116 NewTextureObject - used to allocate struct gl_texture_objects 117 NewTextureImage - used to allocate struct gl_texture_images 118 119New ctx->Texture._EnabledCoordUnits field: 120 With the addition of GL_NV_fragment_program we may need to interpolate 121 various sets of texture coordinates even when the corresponding texture 122 unit is not enabled. That is, glEnable(GL_TEXTURE_xD) may never get 123 called but we still may have to interpolate texture coordinates across 124 triangles so that the fragment program will get them. 125 This new field indicates which sets of texture coordinates are needed. 126 If a bit is set in the ctx->Texture._EnabledUnits bitmask is set, the 127 same bit MUST be set in ctx->Texture._EnabledCoordUnits. 128 129 130 131To Do 132----- 133Add screen-awareness to fakeglx.c 134 135 136 137 138Device Driver Status 139-------------------- 140 141A number of Mesa's software drivers haven't been actively maintained for 142some time. We rely on volunteers to maintain many of these drivers. 143Here's the current status of all included drivers: 144 145 146Driver Status 147---------------------- --------------------- 148XMesa (Xlib) implements OpenGL 1.4 149OSMesa (off-screen) implements OpenGL 1.4 150FX (3dfx Voodoo1/2) implements OpenGL 1.3 151SVGA implements OpenGL 1.3 152Wind River UGL implements OpenGL 1.3 153Windows/Win32 implements OpenGL 1.4 154DJGPP implements OpenGL 1.4 155GGI implements OpenGL 1.3 156BeOS implements OpenGL 1.4 157Allegro needs updating 158D3D needs updating 159 160Note: supporting OpenGL 1.4 (vs. 1.3 or 1.2) usually only requires that the 161driver call the _mesa_enable_1_4_extensions() function. 162 163 164---------------------------------------------------------------------- 165