summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker/st_cb_fbo.c
AgeCommit message (Collapse)Author
2008-04-30gallium: use new buffer wrapper functions in p_inlines.hBrian Paul
This allows us to remove most of the direct references to winsys in the state tracker.
2008-04-29gallium: added some assertions to st_render_texture() to check surface formatBrian Paul
Make sure we can really render to the texture surface given its format.
2008-04-25gallium: Tell the driver the texture is updated when we finish rendering to it.Michel Dänzer
2008-04-24gallium: Initial support for pixel formats with unused storage components.Michel Dänzer
Also clarify that RGB formats with no (used) alpha component are treated as having alpha = 1.0.
2008-04-07gallium: accum buffer fixesBrian Paul
If the driver can't create a PIPE_FORMAT_R16G16B16A16_SNORM surface, create an accum surface using a shallower format and taller height. Since only the accum buffer code accesses the surface the actual format doesn't really matter, just that there's enough memory.
2008-04-07gallium: clean-up in st_renderbuffer_alloc_storage()Brian Paul
2008-03-26gallium: Change pipe->flush() interface to optionally return a fence.Michel Dänzer
The cell driver still uses an internal CELL_FLUSH_WAIT flag, in the long run proper fencing should be implemented for it.
2008-02-27gallium: remove pipe_context->texture_create/release/get_tex_surface()Brian
These functions are now per-screen, not per-context.
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-01-25gallium: rename pipe_buffer_handle to pipe_buffer, rework pipebuffer/ codeKeith Whitwell
Provide an actual definition of the pipe_buffer struct, containing the parameters used to create the buffer, and its refcount. Shift refcounting buffers out of the winsys interface, similar to surfaces & textures. Rework pipebuffer/ to reflect the fact these changes, and also Michel's reworking of the buffer interface.
2008-01-17Back-port miscellaneous fixes from internal branch (mostly portability fixes).José Fonseca
These are changes that are in our internal branch, but somehow were skipped so far. It was done using visual comparison of the branches -- it is likely that changes are being carried on the wrong way
2008-01-14Remove mapping fields from struct pipe_surface.Michel Dänzer
It's now the responsibility of surface users to keep track of their mappings.
2007-12-20gallium: make state tracker explictly ask for rendercache flushesKeith Whitwell
2007-12-13add missing code for PIPE_FORMAT_S8_UNORM renderbufferBrian
2007-12-12Re-org of st_create_framebuffer() and renderbuffer format selection.Brian
st_create_framebuffer() now takes pipe_formats for the color, depth, stencil buffers. This avoids a round-about chain of calls to pipe->is_format_supported() for window renderbuffers (their format never changes). Renderbuffer format selection code in st_format.c is simpler now too.
2007-12-11Add surface storage allocation function to winsys interface.José Fonseca
2007-12-10XXX comments about some hard-coded values that need to be fixedBrian
2007-12-10Add 'type' parameter to is_format_supported() to specify texture vs. drawing ↵Brian
surface, etc. Additional types may be added in the future.
2007-12-10Fix up some confusion wrt winsys->buffer_create alignment / flags parameters.Michel Dänzer
intel_winsys works again.
2007-12-09Adapt for winsys interface changes.José Fonseca
2007-12-07Define PIPE_FORMAT_ tokens as an enum set, rather than #defines.Brian
This makes debugging a _lot_ easier. In gdb, "print format" used to display 613570600, now you see PIPE_FORMAT_A8R8G8B8_UNORM.
2007-12-07move surface pitch calculation so it always gets updatedBrian
2007-12-07Eliminate struct pipe_region.Michel Dänzer
Directly use struct pipe_buffer_handle for storage and struct pipe_surface for (un)mapping.
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-29Move dimensions from struct pipe_region to struct pipe_surface.Michel Dänzer
2007-11-08new init_renderbuffer_bits() helperBrian
2007-11-07Add winsys->surface_release() to complement winsys->surface_alloc().Brian
pipe_surface now has a pointer to the winsys which create/owns the surface. This allows clean surface deallocation w/out a rendering context.
2007-11-06realloc surface if format changes, remove dead codeBrian
2007-10-29Make it compile under linux.Michal Krol
Move pipe_region/surface_reference functions to pipe/p_inlines.h. Remove #include "p_util.h" from pipe/p_context.h.
2007-10-27Use PIPE_FORMAT in state tracker.michal
Fix PIPE_FORMAT field encoding. Re-implement st_get_format_info.
2007-10-26surface_alloc() is now a winsys function.Brian
This allows surfaces to be allocated without a rendering context. A few loose ends to resolve, but in working condition.
2007-10-25Move region_alloc() and region_release() to pipe_winsys.Brian
This allows regions to be allocated w/out a rendering context.
2007-10-23Don't pad renderbuffers to multiple of two pixels anymore.Brian
This was only needed to avoid out-of-bounds memory accesses with the 2x2 quad_read/write() functions which no longer exist.
2007-10-20unmap regions when reallocating renderbuffer storageBrian
2007-10-1416-bit rgba surface/format for accumBrian
2007-10-10use correct mipmap level in st_render_texture()Brian
2007-10-10fix width/height padding that caused failed assertion upon window resizeBrian
2007-09-19Pad surface dimensions to multiples of 2.Michel Dänzer
Avoids an assertion failure with softpipe if requested width or height is odd.
2007-08-23added GL_STENCIL_INDEX8_EXTBrian
2007-08-22Improved pipe_region/surface_reference() functionsBrian
Now dereferences the old object first. Target object may be NULL to clear the pointer.
2007-08-17added assertions, disable debug outputBrian
2007-08-13set renderbuffer Width/Height = texture sizeBrian
2007-08-13fix up some render-to-texture code ... almost thereBrian
2007-08-13check for ctx==NULL in st_renderbuffer_delete()Brian
2007-08-10pipe->region_alloc() now takes width instead of pitch, plus a flags paramBrian
2007-08-10more render to texture workBrian
2007-08-10sketch out some render-to-texture codeBrian
2007-08-10rename st_cb_teximage.h st_format.hBrian
2007-08-10code movementBrian
2007-08-09init strb->Base.DataType appropriately, clean-upsBrian