summaryrefslogtreecommitdiff
path: root/src/mesa/main/texobj.c
AgeCommit message (Collapse)Author
2010-01-04mesa: make texture BorderColor a union of float/int/uintBrian Paul
When we have integer-valued texture formats, the texture border color must also store integer and uint values. With GL 3.0, the new glTexParameterIiv() and glTexParameterIuiv() functions can set the border color to int or uint values.
2009-12-11Merge branch 'mesa_7_7_branch'Brian Paul
Conflicts: src/gallium/state_trackers/xorg/xorg_xv.c src/mesa/drivers/dri/intel/intel_span.c
2009-12-11Merge branch 'mesa_7_6_branch' into mesa_7_7_branchBrian Paul
2009-12-09mesa: fix baseLevel >= MAX_TEXTURE_LEVELS testBrian Paul
This fixes invalid array indexing when baseLevel == MAX_TEXTURE_LEVELS. See bug 25528.
2009-12-01mesa: added comment for target_enum_to_index()Brian Paul
2009-10-28Merge branch 'texformat-rework'Brian Paul
Conflicts: src/mesa/drivers/dri/radeon/radeon_fbo.c src/mesa/drivers/dri/s3v/s3v_tex.c src/mesa/drivers/dri/s3v/s3v_xmesa.c src/mesa/drivers/dri/trident/trident_context.c src/mesa/main/debug.c src/mesa/main/mipmap.c src/mesa/main/texformat.c src/mesa/main/texgetimage.c
2009-10-28mesa: choose texture format in _mesa_get_fallback_texture()Brian Paul
2009-10-14mesa: remove unused ctx->Driver.PrioritizeTextures() hookBrian Paul
2009-10-05Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/gallium/auxiliary/util/u_cpu_detect.c
2009-10-02mesa: fix incorrect default texture binding in unbind_texobj_from_texunits()Brian Paul
If we deleted a currently bound texture, we were always reverting the texture binding to the default 1D texture rather than the proper default texture.
2009-10-01mesa: better debug messageBrian Paul
2009-09-24mesa/main: Make FEATURE_colortable follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of colortab.h to work without knowing if the feature is available.
2009-08-13mesa: s/assert/ASSERT/ in _mesa_reference_texobj()Brian Paul
We want the no-op ASSERT for non-debug builds.
2009-08-07mesa: fix commentBrian Paul
2009-08-05mesa/main: Add functions to clear and dirty texture objects.Chia-I Wu
This commit adds a function to clear a texture object such that there is no image data associated with it, and a function to dirty it so that it will be re-tested for completeness. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-06-03Fast path when rebinding the same texture in single context environmentIan Romanick
If there is no shared context, there is no purpose in rebinding the same texture. In some artificial tests this improves performance 10% - 30%.
2009-05-19mesa: print more info when valid_texture_object() failsBrian Paul
2009-05-01mesa: create/use a fallback texture when bound texture is incompleteBrian Paul
When a GLSL sampler reads from an incomplete texture it should return (0,0,0,1). Instead of jumping through hoops in all the drivers to make this happen, just create/install a fallback texture with those texel values. Fixes piglit/fp-incomplete-tex on i965 and more importantly, fixes some GPU lockups when trying to sample from missing surfaces. If a binding table entry is NULL, it seems that sampling sometimes works, but not always (lockup). Todo: create a fallback texture for each type of texture target?
2009-03-17mesa: update/fix doxygen commentsVinson Lee
2009-02-22mesa: move a bunch of compiler-related stuff into new compiler.h headerBrian Paul
This trims down and cleans up imports.h and glheader.h quite a bit.
2009-02-21mesa: use an array for current texture objectsBrian Paul
Use loops to consolidate lots of texture object code.
2009-02-21mesa: use an array for default texture objectsBrian Paul
Replace Default1D/2D/3D/Cube/etc with DefaultTex[TEXTURE_x_INDEX]. The same should be done with the Current1D/2D/3D/etc pointers...
2009-02-07mesa: minor fixes to incomplete texture debug codeBrian Paul
2009-01-30mesa: add missing _mesa_reference_texobj() calls for texture array targetsBrian Paul
2009-01-28mesa: remove GL_SGIX_shadow, GL_SGIX_shadow_ambient and GL_SGIX_depth_textureBrian Paul
Everyone should be using the newer/better ARB versions of these extensions.
2009-01-28mesa: set/get new state for GL_EXT_texture_swizzleBrian Paul
2009-01-21mesa: add some debug assertions to detect null current texture object pointersBrian Paul
See bug #17895. These assertions could be removed when this is resolved.
2008-12-14Perform range checking on app supplied texture base levelIan Romanick
It is possible for applications to specify any texture base level, including trivially invalid values (i.e., 47000000). When an app specifies an invalide base level, we should gracefully disable the texture instead of accessing memory outside the gl_texture_object. This fixes an occasional segfault in one of our conformance tests.
2008-09-21mesa: refactor: move #define FEATURE flags into new mfeatures.h fileKeith Whitwell
Also, check the FEATURE flags in many places. (cherry picked from commit 40d1a40f294f1ed2dacfad6f5498322fc08cc2d1) Conflicts: src/mesa/main/config.h src/mesa/main/context.c src/mesa/main/texobj.c src/mesa/main/texstate.c src/mesa/main/texstore.c
2008-08-18mesa: rearrange some code in _mesa_BindTexture() to fix error detection bug ↵Brian Paul
17173 Also, move GL_TEXTURE_RECTANGLE init code into separate function.
2008-08-07mesa: fix glBindTexture error string (bug 17005)Brian Paul
2008-08-06mesa: fix comment about texture targets (bug 17005)Brian Paul
2008-02-15Fix glBindTexture crash (bug 14514)Brian
2007-08-16Bring over the texobj refcounting changes from mesa_7_0_branchBrian
2007-08-14Fix a few more problems with freeing FBOs/textures during context destruction.Brian
Free FBOs before textures since the later may be referenced by the former. Need to bind the context we're destroying if there isn't a current context so that ctx->DeleteTexture() etc can be used.
2007-08-13Implement mutex/locking around texture object reference counting.Brian
Use new _mesa_reference_texobj() function for referencing/unreferencing textures. Add new assertions/tests to try to detect invalid usage of deleted textures.
2007-06-11Replace texobj->Complete with texobj->_Complete since it's a derived field.Brian
2007-05-21get rid of GenTexturesLock, used ctx->Shared->MutexBrian
2007-05-21remove the unused texobj Mutex fieldBrian
2007-05-21remove a VMS-ism that doesn't seem needed elsewhereBrian
2007-05-21improve some comments, clean-up formattingBrian
2007-05-16Initial implementation of MESA_texture_arrayIan Romanick
Shadow sampling from texture arrays is still not implemented. Everything else should be there, though.
2007-05-10Refactor the loop in unbind_texobj_from_texunits.Ian Romanick
Common code was pulled out of the per-target if-statment and put at the end of the for-loop. The common code is guarded by a new variable, curr, that is set to point to the unit's current target in each if-statement.
2007-01-23fixes for C++ warnings/errorsBrian
2006-11-01Merge texmem-0-3-branch.Keith Whitwell
2006-06-15added some comments, braces in _mesa_BindTextureBrian Paul
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.
2005-10-05Remove _IsPowerOfTwo from gl_texture_object, not really needed.Brian Paul
2005-10-05In gl_texture_image replace IntFormat with InternalFormat and Format withBrian Paul
_BaseFormat to be consistant with gl_renderbuffer.