summaryrefslogtreecommitdiff
path: root/src/mesa/main/texstore.c
AgeCommit message (Collapse)Author
2006-07-19For glGetTexImage(), move the _mesa_validate_pbo_access() error check intoBrian Paul
_mesa_GetTexImage() so it's not needed in the fallback or driver functions.
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-08two more texture compression fixesBrian Paul
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-04-26fix a few stride computations in _mesa_texstore_rgba()Brian Paul
2006-04-06Replace MESA_FORMAT_DEPTH_COMPONENT_FLOAT32 with 32-bit integer format.Brian Paul
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.
2006-03-29fix components initialization in two places (Ewald Snel)Brian Paul
2006-03-29new tests for GL_DEPTH_STENCIL_EXTBrian Paul
2006-03-26merge from texman branchBrian Paul
2006-03-16finish up some loose ends in _mesa_texstore_z24_s8()Brian Paul
2005-12-01remove uintptr_t castBrian Paul
2005-10-05fix byteswapping bug in _mesa_texstore_ycbcr() (Benjamin Herrenschmidt)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-01added _mesa_texstore_z24_s8()Brian 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-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-05-23Import Thomas Helstrom's SSE memcpy code from the via X.org driver.Keith Whitwell
Add a TextureMemCpy callback, called from texstore.c when copying texture data via the memcpy_texture() path. Enable this code in the via driver - 100% speedup in texdown.c results.
2005-05-16Don't use _mesa_swizzle_ubyte_image if all three texture formatsFelix Kuehling
involved in _mesa_textore_argb/rgba8888 (source, base-internal, destination) differ. _mesa_swizzle_ubyte_image knows only about two of the formats and can't handle the case that all three are different correctly. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=3111.
2005-05-05Port Mesa to build on a P64 platform (e.g., Win64). P64 platformsKarl Schultz
use 64-bit pointers and 32-bit longs. So, operations like casting pointers to unsigned long and back to pointer won't work. glheader.h now includes files to define uintptr_t, which should instead be used for this sort of operation. It is an integer type that is the same size as a pointer.
2005-05-04Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul
Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
2005-04-26comments and minor clean-upBrian Paul
2005-02-07argb8888 optimizations from via branchKeith Whitwell
2004-12-12Added driver hooks for GetTexImage() and GetCompressedTexImage().Brian Paul
Added fallback _mesa_get_[compressed]_teximage() routines to texstore.c
2004-12-03silence a variety of warnings found with g++ 3.4.2Brian Paul
2004-11-23update _mesa_store_teximageXd() comments and minor code clean-upBrian 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-31Map/Unmap PBO as needed so that the texstore routines can work withBrian Paul
hardware-based PBOs in the future.
2004-10-18changed _mesa_rescale_teximage2d to allow rescaling of padded imagesDaniel Borca
2004-08-25Silence gcc 3.4 warnings on ReactOS. Mostly unused var warnings. (patch ↵Brian Paul
1015696)
2004-08-25fix a couple bad castsBrian Paul
2004-06-24disabled unnecessary assertions in texture replicatorDaniel Borca
2004-06-19Big-endian texture fixes from Michel Dänzer.Brian Paul
2004-06-16fix component indexing bug in _mesa_texstore_al88()Brian Paul
2004-06-10Roland's patch to fix promotion of alpha or luminance textures to theBrian Paul
luminance_alpha format. In particular, using the al88 format to store GL_ALPHA textures with r200 driver.
2004-05-13Another pass at implementing byte-swapped texture formats.Brian Paul
More code re-use this time. Most formats now tested/debugged with new packedpixels.c test.
2004-05-12yank bgr233 texformat. minor comment updates.Brian Paul
2004-05-12Added big-endian texture formats.Brian Paul
Moved CI->RGBA palette lookup into texel fetch function.
2004-05-05fix a few bugs when using GL_REDUCE convolution modeBrian Paul
2004-05-04fix a bug on the convolution pathBrian Paul
2004-05-04Fix minor warnings found with g++.Brian Paul
2004-05-04texture compression: getting warmerDaniel Borca
2004-05-02restored _mesa_rescale_teximage2d()Brian Paul
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-26bring over build fixes from stable branchAlan Hourihane
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-03-13Implementation of GL_EXT_pixel_buffer_object extension.Brian Paul
Note: extension may not be finalized yet - subject to change! Note: implementation not fully suitable for h/w implementation yet.
2004-02-28Remove clamp parameter from _mesa_unpack_color_span_float(). Pass theBrian Paul
IMAGE_CLAMP_BIT if needed. Added ClampVertexColors and ClampFragmentColors to GLcontext in anticipation of upcoming extensions (not fully used yet).