summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/texobj.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Consider textures incomplete when maxlevel < baselevel.Eric Anholt2011-01-051-0/+6
| | | | | See section 3.8.10 of the GL 2.1 specification. There's no way to do anything sane with that, and drivers would get all sorts of angry.
* mesa: set gl_texture_object::_Complete=FALSE in incomplete()Brian Paul2010-12-061-27/+5
|
* mesa: test for cube map completeness in glGenerateMipmap()Brian Paul2010-12-061-0/+38
| | | | | | | The texture is not cube complete if the base level images aren't of the same size and format. NOTE: This is a candidate for the 7.9 branch.
* mesa: pass gl_format to _mesa_init_teximage_fields()Brian Paul2010-11-181-3/+5
| | | | | | | | | | | This should prevent the field going unset in the future. See bug http://bugs.freedesktop.org/show_bug.cgi?id=31544 for background. Also remove unneeded calls to clear_teximage_fields(). Finally, call _mesa_set_fetch_functions() from the _mesa_init_teximage_fields() function so callers have one less thing to worry about.
* mesa: whitespace cleanupsBrian Paul2010-11-161-35/+37
|
* mesa: silence new warnings in texobj.cBrian Paul2010-11-021-4/+2
| | | | | | Silences warning such as: main/texobj.c:442:40: warning: ISO C99 requires rest arguments to be used main/texobj.c:498:58: warning: ISO C99 requires rest arguments to be used
* mesa: Don't compute an unused texture completeness debug string.Eric Anholt2010-11-021-9/+12
| | | | | This showed up at about 1% on cairo-gl firefox-talos-gfx, where glClear() is called while a texture is incomplete.
* Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg2010-10-131-12/+12
|
* mesa: don't call valid_texture_object() in non-debug buildsBrian Paul2010-09-201-5/+2
| | | | | | | | | This reverts commit c32bac57ed445e48856d74113364287ed6e5cdd4 and silences the warning differently. The _mesa_reference_texobj() function is called quite a bit and we don't want to call valid_texture_object() all the time in non- debug builds.
* mesa: Silence "'valid_texture_object' defined but not used" warning.Vinson Lee2010-09-171-1/+5
|
* mesa: rename src/mesa/shader/ to src/mesa/program/Brian Paul2010-06-101-1/+1
|
* mesa: s/sprintf/_mesa_snprintf/Vinson Lee2010-05-021-2/+2
|
* Replace the _mesa_*printf() wrappers with the plain libc versionsKristian Høgsberg2010-02-191-3/+3
|
* Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versionsKristian Høgsberg2010-02-191-1/+1
|
* mesa: replace _mesa_bzero() with memset()Brian Paul2010-02-191-1/+1
|
* Merge branch 'mesa_7_7_branch'Brian Paul2010-01-221-1/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/draw/draw_context.c src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c src/gallium/auxiliary/pipebuffer/Makefile src/gallium/auxiliary/pipebuffer/SConscript src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/auxiliary/tgsi/tgsi_scan.c src/gallium/drivers/i915/i915_surface.c src/gallium/drivers/i915/i915_texture.c src/gallium/drivers/llvmpipe/lp_setup.c src/gallium/drivers/llvmpipe/lp_tex_sample_c.c src/gallium/drivers/llvmpipe/lp_texture.c src/gallium/drivers/softpipe/sp_prim_vbuf.c src/gallium/state_trackers/xorg/xorg_dri2.c src/gallium/winsys/drm/intel/gem/intel_drm_api.c src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c src/gallium/winsys/drm/radeon/core/radeon_drm.c src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c src/mesa/state_tracker/st_cb_clear.c
| * mesa: Remove unnecessary header from texobj.c.Vinson Lee2010-01-171-1/+0
| |
* | mesa: make texture BorderColor a union of float/int/uintBrian Paul2010-01-041-4/+4
| | | | | | | | | | | | | | | | 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.
* | Merge branch 'mesa_7_7_branch'Brian Paul2009-12-111-1/+1
|\| | | | | | | | | | | Conflicts: src/gallium/state_trackers/xorg/xorg_xv.c src/mesa/drivers/dri/intel/intel_span.c
| * Merge branch 'mesa_7_6_branch' into mesa_7_7_branchBrian Paul2009-12-111-1/+1
| |\
| | * mesa: fix baseLevel >= MAX_TEXTURE_LEVELS testBrian Paul2009-12-091-1/+1
| | | | | | | | | | | | | | | This fixes invalid array indexing when baseLevel == MAX_TEXTURE_LEVELS. See bug 25528.
* | | mesa: added comment for target_enum_to_index()Brian Paul2009-12-011-1/+2
|/ /
* | Merge branch 'texformat-rework'Brian Paul2009-10-281-0/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | mesa: choose texture format in _mesa_get_fallback_texture()Brian Paul2009-10-281-0/+5
| | |
* | | mesa: remove unused ctx->Driver.PrioritizeTextures() hookBrian Paul2009-10-141-2/+0
| | |
* | | Merge branch 'mesa_7_6_branch'Brian Paul2009-10-051-1/+1
|\ \ \ | | |/ | |/| | | | | | | | | | Conflicts: src/gallium/auxiliary/util/u_cpu_detect.c
| * | mesa: fix incorrect default texture binding in unbind_texobj_from_texunits()Brian Paul2009-10-021-1/+1
| | | | | | | | | | | | | | | 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.
* | | mesa: better debug messageBrian Paul2009-10-011-1/+1
| |/ |/|
* | mesa/main: Make FEATURE_colortable follow feature conventions.Chia-I Wu2009-09-241-4/+0
|/ | | | | As shown in mfeatures.h, this allows users of colortab.h to work without knowing if the feature is available.
* mesa: s/assert/ASSERT/ in _mesa_reference_texobj()Brian Paul2009-08-131-2/+2
| | | | We want the no-op ASSERT for non-debug builds.
* mesa: fix commentBrian Paul2009-08-071-4/+3
|
* mesa/main: Add functions to clear and dirty texture objects.Chia-I Wu2009-08-051-1/+44
| | | | | | | | 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 <[email protected]>
* 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
|