summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/texobj.c
Commit message (Collapse)AuthorAgeFilesLines
* Fast path when rebinding the same texture in single context environmentIan Romanick2009-06-031-0/+12
| | | | | If there is no shared context, there is no purpose in rebinding the same texture. In some artificial tests this improves performance 10% - 30%.
* mesa: print more info when valid_texture_object() failsBrian Paul2009-05-191-1/+2
|
* mesa: create/use a fallback texture when bound texture is incompleteBrian Paul2009-05-011-0/+53
| | | | | | | | | | | | | | 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?
* mesa: update/fix doxygen commentsVinson Lee2009-03-171-1/+1
|
* mesa: move a bunch of compiler-related stuff into new compiler.h headerBrian Paul2009-02-221-1/+1
| | | | This trims down and cleans up imports.h and glheader.h quite a bit.
* mesa: use an array for current texture objectsBrian Paul2009-02-211-92/+44
| | | | Use loops to consolidate lots of texture object code.
* mesa: use an array for default texture objectsBrian Paul2009-02-211-14/+21
| | | | | Replace Default1D/2D/3D/Cube/etc with DefaultTex[TEXTURE_x_INDEX]. The same should be done with the Current1D/2D/3D/etc pointers...
* mesa: minor fixes to incomplete texture debug codeBrian Paul2009-02-071-4/+2
|
* mesa: add missing _mesa_reference_texobj() calls for texture array targetsBrian Paul2009-01-301-2/+2
|
* mesa: remove GL_SGIX_shadow, GL_SGIX_shadow_ambient and GL_SGIX_depth_textureBrian Paul2009-01-281-6/+2
| | | | Everyone should be using the newer/better ARB versions of these extensions.
* mesa: set/get new state for GL_EXT_texture_swizzleBrian Paul2009-01-281-0/+9
|
* mesa: add some debug assertions to detect null current texture object pointersBrian Paul2009-01-211-0/+14
| | | | See bug #17895. These assertions could be removed when this is resolved.
* Perform range checking on app supplied texture base levelIan Romanick2008-12-141-0/+12
| | | | | | | | | 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.
* mesa: refactor: move #define FEATURE flags into new mfeatures.h fileKeith Whitwell2008-09-211-0/+4
| | | | | | | | | | | | | 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
* mesa: rearrange some code in _mesa_BindTexture() to fix error detection bug ↵Brian Paul2008-08-181-42/+59
| | | | | | 17173 Also, move GL_TEXTURE_RECTANGLE init code into separate function.
* mesa: fix glBindTexture error string (bug 17005)Brian Paul2008-08-071-1/+1
|
* mesa: fix comment about texture targets (bug 17005)Brian Paul2008-08-061-1/+1
|
* Fix glBindTexture crash (bug 14514)Brian2008-02-151-1/+3
|
* Bring over the texobj refcounting changes from mesa_7_0_branchBrian2007-08-161-15/+5
|
* Fix a few more problems with freeing FBOs/textures during context destruction.Brian2007-08-141-1/+4
| | | | | | 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.
* Implement mutex/locking around texture object reference counting.Brian2007-08-131-122/+130
| | | | | | Use new _mesa_reference_texobj() function for referencing/unreferencing textures. Add new assertions/tests to try to detect invalid usage of deleted textures.
* Replace texobj->Complete with texobj->_Complete since it's a derived field.Brian2007-06-111-21/+21
|
* get rid of GenTexturesLock, used ctx->Shared->MutexBrian2007-05-211-15/+7
|
* remove the unused texobj Mutex fieldBrian2007-05-211-5/+0
|
* remove a VMS-ism that doesn't seem needed elsewhereBrian2007-05-211-4/+0
|
* improve some comments, clean-up formattingBrian2007-05-211-4/+12
|
* Initial implementation of MESA_texture_arrayIan Romanick2007-05-161-5/+45
| | | | | Shadow sampling from texture arrays is still not implemented. Everything else should be there, though.
* Refactor the loop in unbind_texobj_from_texunits.Ian Romanick2007-05-101-18/+12
| | | | | | 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.
* fixes for C++ warnings/errorsBrian2007-01-231-3/+3
|
* Merge texmem-0-3-branch.Keith Whitwell2006-11-011-1/+38
|
* added some comments, braces in _mesa_BindTextureBrian Paul2006-06-151-2/+5
|
* merge from texman branchmesa_20060325Brian Paul2006-03-261-10/+19
|
* Lots of changes/fixes for rendering to framebuffer objects.Brian Paul2006-03-201-43/+90
| | | | | | | - 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.
* Remove _IsPowerOfTwo from gl_texture_object, not really needed.Brian Paul2005-10-051-7/+0
|
* In gl_texture_image replace IntFormat with InternalFormat and Format withBrian Paul2005-10-051-2/+2
| | | | _BaseFormat to be consistant with gl_renderbuffer.
* Committing in .Jouk Jansen2005-09-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | 1) change compilation on VMS to use IEEE floating points 2) one more problem with _mesa_sprintf solved Modified Files: Mesa/docs/README.VMS Mesa/progs/demos/descrip.mms Mesa/progs/tests/descrip.mms Mesa/progs/util/descrip.mms Mesa/progs/xdemos/descrip.mms Mesa/src/glu/mesa/descrip.mms Mesa/src/glu/sgi/descrip.mms Mesa/src/glut/glx/descrip.mms Mesa/src/mesa/array_cache/descrip.mms Mesa/src/mesa/drivers/common/descrip.mms Mesa/src/mesa/drivers/osmesa/descrip.mms Mesa/src/mesa/drivers/x11/descrip.mms Mesa/src/mesa/glapi/descrip.mms Mesa/src/mesa/main/descrip.mms Mesa/src/mesa/main/texobj.c Mesa/src/mesa/math/descrip.mms Mesa/src/mesa/shader/descrip.mms Mesa/src/mesa/shader/grammar/descrip.mms Mesa/src/mesa/shader/slang/descrip.mms Mesa/src/mesa/swrast/descrip.mms Mesa/src/mesa/swrast_setup/descrip.mms Mesa/src/mesa/tnl/descrip.mms ----------------------------------------------------------------------
* use mesa import wrappers, bug 4468Brian Paul2005-09-161-1/+1
|
* add FreeTexImageData hook to help single-copy texturing in driversKeith Whitwell2005-03-221-1/+1
|
* unlock mutex upon error return (Jeff Muizelaar)Brian Paul2005-02-121-0/+1
|
* mesa-main-0-NULL.patch from Jeff MuizelaarKeith Whitwell2005-02-111-1/+1
|
* Remove the Shared->TexObjectList pointer and Next field from gl_texture_object.Brian Paul2005-02-051-57/+19
| | | | | | Was only used by two drivers to walk over all texture objects. Can do that via the hash table instead. Cleaned up some comments for struct gl_texture_object.
* added mutex to-do commentBrian Paul2005-01-261-0/+4
|
* Change behaviour of glDeleteTextures as discussed on ARB list.Brian Paul2005-01-191-14/+9
| | | | | | glDeleteTexture makes the texture ID immediately free for re-use while the actual texture object lingers until its reference count goes to zero (when no longer bound by any rendering context).
* `t' was not initialized (use `texture' instead?)Daniel Borca2004-12-211-1/+1
|
* fix bug in _mesa_IsTexture()Brian Paul2004-12-211-1/+10
|
* added a comment in BindTextureBrian Paul2004-09-231-0/+4
|
* Repeatedly deleting a texture ID with glDeleteTextures() could lead to a crash.Brian Paul2004-09-141-11/+22
| | | | | Added a DeletePending flag to texture object struct to fix that. Other misc clean-ups.
* Silence gcc 3.4 warnings on ReactOS. Mostly unused var warnings. (patch ↵Brian Paul2004-08-251-0/+1
| | | | 1015696)
* minor clean-upsBrian Paul2004-03-201-14/+17
|
* inform driver of changed wrap/filter parameters due to binding of nv_texrect ↵Roland Scheidegger2004-02-061-0/+8
| | | | texture