summaryrefslogtreecommitdiff
path: root/src/mesa/main/teximage.c
AgeCommit message (Collapse)Author
2006-05-20In gl_texture_image, replace ImageStride with an ImageOffsets array.Brian Paul
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.
2006-05-09Add a new 'all' parameter to _mesa_get_compressed_formats() to indicate whetherBrian Paul
all formats or just those without restrictions/limitations should be returned. We want all when validating the internalFormat parameter to glCompressedTexImage2D but only want unrestricted formats when handling the GL_COMPRESSED_TEXTURE_FORMATS query.
2006-05-08More updates for texture compression.Brian Paul
Added _mesa_compressed_texture_size_glenum() for validating the imageSize parameter to glCompressedTex[Sub]Image1/2/3() which does _not_ call ctx->Driver.CompressedTextureSize() - since that could return a padded size.
2006-05-08Fix a number of texture compression issues.Brian Paul
Pass the MESA_FORMAT_* token to the _mesa_compressed_row_stride(), _mesa_compressed_texture_size() and _mesa_compressed_image_address() functions since we want to use the driver-chosen format, not the user's internalFormat hint. Consolidate code related to choosing the texture format in texstoree.c
2006-03-26merge from texman branchBrian Paul
2006-03-20Lots of changes/fixes for rendering to framebuffer objects.Brian Paul
- When deleting texture objects, unbind from FBOs if necessary. - Changed driver hooks for starting/ending render to texture. - Now properly handle case where gl[Copy]TexImage() is called after glFramebufferTexture[123]D(). That didn't work before.
2006-03-20additional error checking to be sure source renderbuffer exists for ↵Brian Paul
glCopyTex[Sub]Image()
2005-12-01added comment about glTexImage and renderbuffersBrian Paul
2005-11-16Use new gl_framebuffer _Depth/_StencilBuffer fields instead ofBrian Paul
Attachment[BUFFER_DEPTH/STENCIL].Renderbuffer. The former may be wrappers around combined depth/stencil renderbuffers attached at the later points.
2005-11-11Make _mesa_is_proxy_texture() non-static and use in a few more places.Brian Paul
Use COPY_4FV() where possible. Added some comments, clean-ups.
2005-11-05minor improvements in _mesa_init_teximage_fields()Brian Paul
2005-10-05In gl_texture_image replace IntFormat with InternalFormat and Format withBrian Paul
_BaseFormat to be consistant with gl_renderbuffer.
2005-10-01additional error checking for GL_EXT_packed_depth_stencilBrian Paul
2005-09-28Initial work for GL_EXT_packed_depth_stencil extension.Brian Paul
glReadPixels done, glDrawPixels mostly done.
2005-09-15New set_fetch_functions() to set a gl_texture_image's FetchTexel functionsBrian Paul
from the gl_texture_format's functions. Added "adaptor" functions to allow sampling a float-valued texture with GLchans and vice versa. This will allow trimming down the number of texture fetch routines.
2005-09-08check for either GL_ARB_depth_texture or GL_SGIX_depth_texture in a few placesBrian Paul
2005-07-05The old MESA_PBUFFER_ALLOC() function allocated memory on 512-byte boundaries.Brian Paul
Restore that behavior with new _mesa_alloc_texmemory() function. Should fix via_sse_memcpy() problem in found with flightgear.
2005-06-27Get rid of the MESA_PBUFFER_ALLOC/FREE() macros.Brian Paul
If that stuff is still needed, lots of other updates are needed anyway. Also, some misc MALLOC/FREE -> _mesa_malloc/free() changes.
2005-03-22add FreeTexImageData hook to help single-copy texturing in driversKeith Whitwell
2005-02-08indentation fixBrian Paul
2005-02-05add a few commentsBrian Paul
2005-01-17allow more internalFormat/format combinations (i hope i got it right)Daniel Borca
2004-12-20really protect against npot compressed textures (logbase2 never returns -1).Daniel Borca
2004-12-12Added driver hooks for GetTexImage() and GetCompressedTexImage().Brian Paul
Added fallback _mesa_get_[compressed]_teximage() routines to texstore.c
2004-12-10allow GetTexImage with RGBA format and COLOR_INDEX internalformatDaniel Borca
2004-12-02Fix some warningsAlan Hourihane
2004-11-22added GL_RED/GREEN/BLUE to is_color_format()Brian Paul
2004-11-10GL_(UN)PACK_SKIP_IMAGES should only be applied to 3D texture pack/unpackingBrian Paul
and ignored for 1D and 2D images. Need to pass in image dimensions (1,2,3) to the _mesa_image_address() function. This change gets propogated to some other routines. Also added new _mesa_image_address[123]d() convenience functions.
2004-10-31PBO support for glGetCompressedTexImage().Brian Paul
2004-10-31glGetTexImage() now works with PBOs.Brian Paul
2004-10-08Reject unsupported texture formats passed to glCompressedTexImage?D. ThisIan Romanick
fixes Mesa bug #1028405.
2004-09-23don't test for NULL pixels pointer here, do that in the 'store' routines ↵Brian Paul
after validating PBO address
2004-08-25Silence gcc 3.4 warnings on ReactOS. Mostly unused var warnings. (patch ↵Brian Paul
1015696)
2004-07-02document some assumptions made about compressed texture tile sizeBrian Paul
2004-06-19Big-endian texture fixes from Michel Dänzer.Brian Paul
2004-06-15added more compressed formats to is_color_format()Roland Scheidegger
2004-06-14added compressed formats to is_color_format() and updated some commentsBrian Paul
2004-06-11added GL_BGR and GL_BGRA to is_color_format() (Ronny VindenesBrian Paul
2004-06-10Additional error checking for glTexImageXD.Brian Paul
Only allow 1D and 2D GL_DEPTH_COMPONENT textures. Make sure internal format and user format are in same catagory.
2004-05-12Added big-endian texture formats.Brian Paul
Moved CI->RGBA palette lookup into texel fetch function.
2004-04-27Removed the old teximage code.Brian Paul
Moved all code related to specific texture compression modes into new texcompress_s3tc.c and texcompress_fxt1.c files (but not implemented).
2004-04-22use FetchTexelf() in GetTexImage() to return float textures correctlyBrian Paul
2004-04-22New glTexImage code.Brian Paul
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.
2004-02-28rename some span pack/unpack functions for better uniformityBrian Paul
2004-01-27Consolidate texObj->Pos/Neg/X/Y/Z and texObj->Image into a singleKeith Whitwell
array, texObj->Image[face][level].
2004-01-24New error checking in _mesa_GetTexImage().Brian Paul
Updated comments and some better function parameter names.
2004-01-23Initial support for floating point and signed texture formats.Brian Paul
New "FetchTexelFuncF()" function returns texels in floating point format. Only used for depth component images at this time. Changed original FetchTexelFunc to return GLchan instead of GLvoid, removing need for a bunch of ugly casts.
2004-01-11add GL_TEXTURE_CUBE_MAP_ARB to _mesa_max_texture_levels(), reordered some ↵Brian Paul
comments
2003-12-04Port over changes from XFree86/Mesa 5.0.2, mostly to silence compiler warnings.Brian Paul
2003-11-21more texture compressionDaniel Borca