aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_cb_fbo.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'mesa_7_5_branch'José Fonseca2009-06-111-5/+8
|\ | | | | | | | | | | Conflicts: src/mesa/state_tracker/st_cb_fbo.c src/mesa/state_tracker/st_framebuffer.c
| * mesa: Pure software accum buffer.José Fonseca2009-06-101-5/+8
| | | | | | | | | | | | | | | | | | | | The existing implementation was already implemented on software, but relied on the pipe driver to always support the R16G16B16A16_SNORM format. This patch eliminates that, without prejudice against a future hardware-only implementation. It also avoids some of the short <-> float conversions, and only does a read transfer of the color buffer on GL_RETURN if absolutely necessary.
* | st: added st_renderbuffer::defined flagBrian Paul2009-05-011-0/+1
|/ | | | | | | | | | Indicates whether there's defined image contents, or garbage/don't care. This is set when we draw into a renderbuffer and cleared when we resize/ reallocate a renderbuffer or do a buffer swap (back buffer becomes undefined). We use this to determine whether the front color buffer has been drawn to, and whether to display its contents upon glFlush/Finish(), when the new st_swapbuffers() function is used.
* gallium: added st_bind/release_teximage() functionsBrian Paul2008-09-011-0/+4
|
* gallium: handle msaaRoland Scheidegger2008-06-271-1/+1
|
* gallium: fix some render to texture bugsBrian Paul2008-05-071-0/+3
| | | | | | | | | | | | | | | 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...
* gallium: create drawing surfaces as GPU_READ/WRITE onlyBrian Paul2008-05-061-1/+2
| | | | | Create different temporary surfaces for CPU_READ/WRITE when needed (such as for glReadPixels, glAccum, some glCopy/DrawPixels, glCopyTexSubImage, etc).
* gallium: accum buffer fixesBrian Paul2008-04-071-0/+3
| | | | | | | 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.
* Re-org of st_create_framebuffer() and renderbuffer format selection.Brian2007-12-121-3/+2
| | | | | | | | 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.
* Add 'type' parameter to is_format_supported() to specify texture vs. drawing ↵Brian2007-12-101-1/+2
| | | | | | surface, etc. Additional types may be added in the future.
* init strb->Base.DataType appropriately, clean-upsBrian2007-08-091-1/+1
|
* Checkpoint intel_renderbuffer removal.Brian2007-08-091-4/+19
| | | | | | Remove surface ptr from gl_renderbuffer. Use st_renderbuffer in most places. More clean-up.
* checkpoint: no longer using intel_fbo.cBrian2007-08-091-0/+8
|
* New st_init_*_functions() to initialize the driver functions table.Brian2007-08-061-3/+2
| | | | | We need to do these initializations before initializing the Mesa context because context init involves creating texture/program/etc objects.
* framebuffer object functionsBrian2007-08-031-0/+38