Age | Commit message (Collapse) | Author |
|
Some hardware lays out 3D mipmaps in a manner that can't be expressed
with a simple image stride.
The ImageOffsets array is allocated and initialized to typical defaults
in the _mesa_init_teximage_fields() function. If needed, a driver will
then have to replace these offsets.
TexStore and TexelFetch routines updated to use offsets array.
|
|
This allows render to depth texture (we don't support floating pt. Z buffers).
Rename MESA_FORMAT_DEPTH_COMPONENT16/32 as MESA_FORMAT_Z16/32.
Software fallback for glCopyTexImage now uses integer temporary image instead
of float, eliminates a lot of float/int conversions.
|
|
|
|
glReadPixels done, glDrawPixels mostly done.
|
|
|
|
|
|
Added fallback _mesa_get_[compressed]_teximage() routines to texstore.c
|
|
|
|
More code re-use this time.
Most formats now tested/debugged with new packedpixels.c test.
|
|
|
|
|
|
Moved CI->RGBA palette lookup into texel fetch function.
|
|
|
|
|
|
Moved all code related to specific texture compression modes into
new texcompress_s3tc.c and texcompress_fxt1.c files (but not implemented).
|
|
The gl_texture_format struct now has a StoreTexImageFunc that's called
by glTex[Sub]Image[123]D to convert the user's texture data into the
specific texture format layout. Now it's much easier to add new texture
formats (like the 16/32-bit floating point formats).
The texutil.[ch] and texutil_tmp.h files are obsolete.
|
|
1. Changes to the main header files to exclude some stuff is __SCITECH_SNAP__
is defined. The main GL/gl.h header file in SciTech SNAP is actually a wrapper
that defines a bunch of necessary stuff and then included GL/gl_mesa.h which
is the normal Mesa GL/gl.h header file renamed.
2. Changed APIENTRY * to APIENTRYP macros in the GL/gl.h and GL/glext.h header
files. This will better support other compilers like IBM VisualAge C++. I
added a basic macro for APIENTRYP to GL/gl.h (inside the !SNAP block), so
existing code will compile the same, but when the SNAP version is being
built we will use the correc definitions for the target compiler.
3. Changed a few more void * declarations to GLvoid *'s to avoid Open Watcom
compiler complaints.
4. Updates the OPENGL_VERSION macro to include a patch number (set to 0 for
now). Probably not necessary, but the original macro was wrong and we use
that macro in our code.
5. Changed _tnl_end() to _tnl_end_ctx() to avoid conflicts with _tnl_End when
using a compiler that has a case insensitive link.
|
|
|
|
and depth checks are done via ctx->Driver.TestProxyTexImage(). This allows
more flexiblity, like supporting larger, non-cubic 3D textures.
|
|
|
|
|
|
compression isn't really implmented. Just updated glTexImageXD()
to accept compressed internal format tokens.
|
|
|
|
texture image in the base internal format between user->Mesa format
conversion. See comments in texstore.c
|
|
1. Added ctx->Driver.ChooseTextureFormat() function. Examines user's
internalFormat, format, type params and returns a gl_texture_format.
2. _mesa_store_teximage[123]d() calls ctx->Driver.ChooseTextureFormat(),
allocates storage and transfers the image into the desired format.
3. _mesa_transfer_teximage() now takes a gl_texture_format to describe
the destination format. Any combination of input format/type and
output gl_texture_format is accepted. Uses optimized _mesa_convert_-
texsubimage[123]d() functions when possible.
3. DRI driver's TexImage[123]D functions should be a lot simpler now.
|
|
|
|
|
|
|
|
so they work like the other teximage functions. Added fallback routines to
texstore.c for drivers to use.
|
|
1. gl_texture_image struct's Data pointer points to images in driver's format.
2. Added FetchTexel() function pointer to struct gl_texture_image.
3. Changed Driver Tex[Sub]Image functions, return void now.
4. Texture storage/fetch code in new texstore.c file.
5. Removed texture.[ch] - functions moved to state.c
Note: FX driver updates not finished yet.
|