forked from KolibriOS/kolibrios
0d733fd5e8
git-svn-id: svn://kolibrios.org@4358 a494cfbc-eb01-0410-851d-a64ba20cac60
112 lines
3.4 KiB
Groff
112 lines
3.4 KiB
Groff
|
|
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.
|
|
|
|
|
|
----------------------------------------------------------------------
|