summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker/st_atom_texture.c
AgeCommit message (Collapse)Author
2008-05-07gallium: fix some render to texture bugsBrian Paul
Before, we were sometimes rendering into a stale texture because st_finalize_texture() would discard the old texture and create a new one. Moved st_update_framebuffer atom after texture validation so that we can create a new renderbuffer surface if the texture changes. Also, split texture validation into two parts: finalize_textures and update_textures. Do finalize_textures first to avoid getting into the situtation where we're doing a pipe->surface_copy() mid-way through state validation. Some debug code still in place, but disabled...
2008-05-02gallium: Reallocate pipe_texture in st_TexImage if the texture object was used.Michel Dänzer
Fixes problems with interleaved glTexImage and rendering calls.
2008-05-02Some changed for non-C99 compilersAlan Hourihane
2008-04-25gallium: use simple color pass-through fragment shader if textures don't existBrian Paul
If we run out of texture memory we may not have the texture needed by the fragment shader. If this happens, plug in a color passthrough shader. So instead of crashing, we just don't see the texture. GL_OUT_OF_MEMORY is raised, of course.
2008-04-04gallium: adjust the code in update_textures() to look more like ↵Brian
update_samplers()
2008-03-24gallium: check SamplersUsed to determine if texture needed, as in ↵Brian Paul
st_atom_sampler.c Otherwise, we were sometimes setting texture state but not the corresponding sampler state.
2008-03-20gallium: catch some out of memory conditions in the texture image code.Brian Paul
st_finalize_texture()'s return code now indicates success/fail instead of presence of texture border (which we discard earlier).
2008-03-19gallium: add face, dirtyLevels params to pipe->texture_update()Brian Paul
This provides better information about which images in texture object have changed. Also, call texture_update() from more places previously missed.
2008-03-05gallium: michel's patch to rework texture/sampler binding interfaceKeith Whitwell
Bind all the samplers/textures at once rather than piecemeal. This is easier for drivers to understand.
2008-02-29gallium: change st->state.sampler_texture[] to store pipe_texture pointersBrian Paul
This is a better fix for the previous check-in. Fixes texadd.c conform test, and probably other bugs.
2008-02-29gallium: fix update_textures() bug in pipe_texture binding logicBrian Paul
The 'st' pointer might not have changed, but st->pt might have. The dirtyData flag will indicate when that's happened, so check it.
2008-02-20gallium: new pipe->texture_update() functionBrian
Called whenever texture data is changed (glTexImage, glTexSubImage, glCopyTexSubImage, etc).
2008-02-20gallium: state tracker didn't always notify drivers of texobj data changesBrian
Calling glTexSubImage() or glTexImage() to replace texture data didn't reliably cause pipe->set_sampler_texture() to get called so drivers didn't always get notified of new texture data. The st_texture_object->pt pointer doesn't always indicate changed data so added a dirtyData field.
2008-02-06added commentBrian
2008-02-06clean-upBrian
2007-12-11gallium: remove set_sampler_units interfaceKeith Whitwell
The effect of this mapping can be acheived by the state tracker and setting up the pipe texture state pointers to incorporate its affects.
2007-12-06Hide texture layout details from the state tracker.Michel Dänzer
pipe->get_tex_surface() has to be used for access to texture image data.
2007-11-01silence the finalize_mipmap_tree msgBrian
2007-08-25add names to tracked state atoms to improve debugkeithw
2007-08-13fix some issues with texture/mipmap_tree state trackingBrian
2007-08-07debug infoBrian
2007-08-07plug in texture/sampler state updateBrian
2007-08-07texture image state handlingBrian