| |
| Mesa 6.1 release notes |
| |
| August 18, 2004 |
| |
| PLEASE READ!!!! |
| |
| |
| |
| Introduction |
| ------------ |
| |
| Mesa uses an even/odd version number scheme like the Linux kernel. |
| Odd numbered versions (such as 6.1) designate new developmental releases. |
| Even numbered versions (such as 6.0) designate stable releases. |
| |
| |
| New Features |
| ------------ |
| |
| Half-precision floating point (GLhalf) pixel formats are supported |
| in Mesa, but the feature isn't exposed yet since the ARB extension |
| hasn't been finalized yet. |
| |
| |
| Texture image handling |
| ---------------------- |
| |
| The code which implements image conversion, pixel transfer ops, etc |
| for glTexImage commands has been rewritten. |
| |
| Now the gl_texture_format struct has a new StoreImage function |
| pointer. Each texture format must implement this function. The |
| function is totally responsible for converting the user's texture |
| image into the specific format. A few helper functions makes this |
| relatively simple. |
| |
| Overall, the code is much simpler, cleaner and easier to work with |
| now. Adding new texture formats is straight-forward and there's no |
| longer any distinction between "hardware" and "software" formats. |
| |
| Finally, the code for compressed texture images has been reorganized |
| as well. |
| |
| Removed files: |
| texutil.c |
| texutil.h |
| texutil_tmp.h |
| |
| New files: |
| texcompress_s3tc.c |
| texcompress_fxt1.c |
| |
| |
| |
| Driver / context changes |
| ------------------------ |
| |
| The _mesa_create_context() and _mesa_initialize_context() function |
| parameters have changed. They now take a pointer to a struct |
| dd_function_table. Drivers can initialize this table by calling |
| _mesa_init_driver_functions(). Drivers should then plug in the special |
| functions they implement. In particular, the ctx->Driver.NewTextureObject |
| pointer _must_ be set so that the default texture objects created in |
| _mesa_create/initialize_context() are correctly built. |
| |
| The _mesa_init_driver_functions() function allows a lot of redundant code |
| to be removed from the device drivers (such as initializing |
| ctx->Driver.Accum to point to _swrast_Accum). Adding new functions to |
| the dd_function_table can be done with less hassle since the pointer can |
| be initialized in _mesa_init_driver_functions() rather than in _all_ the |
| drivers. |
| |
| |
| Device Drivers |
| -------------- |
| |
| Mesa advertises itself as supporting OpenGL 1.2, 1.3, 1.4 or 1.5 |
| depending on the device driver's capabilities. For example, if the |
| driver enables all the ARB extensions which are part of OpenGL 1.5 |
| then glGetString(GL_VERSION) will return "1.5". Otherwise, it'll |
| return "1.4" or the next lower version that implements all required |
| functionality. |
| |
| A number of Mesa's software drivers haven't been actively maintained for |
| some time. We rely on volunteers to maintain many of the drivers. |
| Here's the current status of all included drivers: |
| |
| Driver Status |
| ---------------------- --------------------- |
| XMesa (Xlib) implements OpenGL 1.5 |
| OSMesa (off-screen) implements OpenGL 1.5 |
| Glide (3dfx Voodoo1/2) implements OpenGL 1.3 |
| SVGA implements OpenGL 1.3 |
| Wind River UGL implements OpenGL 1.3 |
| Windows/Win32 implements OpenGL 1.5 |
| DJGPP implements OpenGL 1.5 |
| GGI implements OpenGL 1.3 |
| BeOS implements OpenGL 1.5 |
| Allegro needs updating |
| D3D needs updating |
| |
| |
| |
| Other Changes |
| ------------- |
| |
| See the VERSIONS file for more details about bug fixes, etc. in Mesa 6.1. |
| |
| |
| ---------------------------------------------------------------------- |
| $Id: RELNOTES-6.1,v 3.5 2004/08/17 22:58:23 brianp Exp $ |