summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker
AgeCommit message (Collapse)Author
2009-04-17gallium: Create OGL state tracker wrappers for various CPU access operations.Thomas Hellstrom
There are two usage types of buffer CPU accesses: One where we try to use the buffer contents for multiple draw commands in a batch. (batch := sequence of commands that are flushed together), like incrementally adding bitmaps to a bitmap texture that is reallocated on flush. And one where we assume we can safely overwrite the old buffer contexts, like glTexSubImage. In this case we need to make sure all old drawing commands referencing the buffer are flushed before we map the buffer. This is easily forgotten. Add wrappers for the most common of these operations. The first type is prefixed with "st_no_flush" and the second type is prefixed with "st_cond_flush", where "cond" indicates that we attmpt to only flush if there is indeed unflushed draw commands referencing the buffer. Prefixed functions are screen::get_tex_transfer pipe_buffer_write pipe_buffer_read pipe_buffer_map Please use the wrappers whenever possible. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-04-16Merge branch 'register-negate'Brian Paul
2009-04-16Merge branch 'gallium-s3tc'José Fonseca
2009-04-15st: remove XXX commentBrian Paul
2009-04-15st: check for fast memcpy path in decompress_with_blit()Brian Paul
2009-04-15st: st_equal_formats() function to compare gallium/GL pixel formatsBrian Paul
2009-04-15st: decompress_with_blit() path for glGetTexImage().Brian Paul
Decompress a texture by rendering a textured quad.
2009-04-15gallium: Make sure we flush before some texture / buffer operations.Thomas Hellstrom
Also implement context member functions to optimize away those flushes whenever possible. Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
2009-04-15mesa: TGSI translation of multiple render targets.José Fonseca
2009-04-14mesa: merge the prog_src_register::NegateBase and NegateAbs fieldsBrian Paul
There's really no need for two negation fields. This came from the GL_NV_fragment_program extension. The new, unified Negate bitfield applies after the absolute value step.
2009-04-14mesa: Fix gcc assembly enable logic.José Fonseca
The i386 symbol is defined on WINDDK.
2009-04-10gallium: remove pipe_texture::compressed fieldBrian Paul
The format field encodes compressed vs. uncompressed already. We can easily check if a texture is compressed with pf_is_compressed(texture->format).
2009-04-09st: remove another unneeded 'is compressed' comparisonBrian Paul
2009-04-09st: remove unneeded "is compressed" checkBrian Paul
The format indicates compressed vs. uncompressed.
2009-04-09st: rearrange some code to be a little more clearBrian Paul
2009-04-09gallium: remove unneeded compressed=0 assignmentBrian Paul
2009-04-09st: remove comp_byte parameter to st_texture_create()Brian Paul
We can determine if the texture is compressed by checking the format.
2009-04-09st: consolidate format->usage computationBrian Paul
2009-04-09st: add const qualifiers, use GL typesBrian Paul
2009-04-09st: make loops over 3D texture slices a litte more intuitiveBrian Paul
2009-04-09st: reformatting and clean-ups in texture codeBrian Paul
2009-04-09st: If the hw supports it do hw conversion of texture uploadsJakob Bornecrantz
2009-04-08gallium: when using gl_PointCoord ensure we use the correct attribute.Alan Hourihane
2009-04-07st: implement glCopyTexImage() for GL_DEPTH24_STENCIL8 internal formatBrian Paul
2009-04-07st: implement GL_DEPTH_STENCIL format for glReadPixels and DrawPixels()Brian Paul
2009-04-06st: as with swrast, interpret texture border color according to texture formatBrian Paul
Depending on the hardware driver this might not be needed, but it will cause no harm.
2009-04-06st: rename a helper functionBrian Paul
2009-04-06mesa: Fix orientation adjustment for reading stencil pixels.José Fonseca
Fixes conform spcorner.c & spclear.c failure.
2009-04-04gallium: Clean up driver clear() interface.Michel Dänzer
Only allows clearing currently bound buffers, but colour and depth/stencil in a single call.
2009-04-04gallium: Add utility helper for packing combined depth/stencil values.Michel Dänzer
2009-04-03mesa: move glGetTexImage(), glGetCompresssedTexImage() code into new fileBrian Paul
2009-04-03mesa: remove the noClamp parameter to _mesa_pack_rgba_span_float()Brian Paul
It was only set to GL_TRUE in one place where it isn't really needed (glGetTexImage(sRGB format)).
2009-04-03mesa: ensure pbo stencil buffers are mapped before useAlan Hourihane
2009-03-31gallium: Move pf_is_depth_stencil to p_format.h.José Fonseca
2009-03-28mesa: add new signed rgba texture formatRoland Scheidegger
This is a (partial) backport of the signed texture format support in OGL 3.1. Since it wasn't promoted from an existing extension roll our own.
2009-03-27mesa: Support Z24S8 wherever S8Z24 is supported.José Fonseca
2009-03-26st: init the default texture to (0,0,0,1)Brian Paul
The default texture is used when a sampler uses an incomplete texture. This change fixes the piglit fp-incomplete test.
2009-03-26gallium: Remove some little-used fields from struct pipe_surface.Michel Dänzer
2009-03-24mesa/st: bump gallium version to 0.3Keith Whitwell
To distinguish from the -0.2 version still being maintained on the gallium-mesa-7.4 branch. There are already greater interface changes between these two branches than there were between -0.2 and -0.1. Also stop injecting Tungsten into the vendor string - the Gallium in the renderer string should be sufficient.
2009-03-23gallium: Remove remnants of reference counting internals outside of p_refcnt.h.Michel Dänzer
2009-03-21gallium: remove remaining references to origin_lower_leftKeith Whitwell
2009-03-21st: Silence compiler warnings.Michal Krol
2009-03-20gallium: remove use of origin_lower_leftBrian Paul
This was used to indicate OpenGL's lower-left origin for fragment window coordinates for polygon stipple and gl_FragCoord. Now: - fragment coordinate origin is always upper-left corner - GL polygon stipple is inverted and shifted before given to gallium - GL fragment programs that use INPUT[WPOS] are modified to use an inverted window coord which is placed in a temp register. Note: the origin_lower_left field still exists in pipe_rasterizer_state. Remove it when all the drivers, etc. no longer reference it.
2009-03-19mesa: check renderbuffer is defined before use.Alan Hourihane
2009-03-19st/gl: Only transfer needed parts in st_TexSubimageJakob Bornecrantz
2009-03-18st: call _glapi_check_multithread from st_make_currentKeith Whitwell
This function is called from many OS-dependent versions of MakeCurrent. Move the check for multithreading to this central location to avoid having to make this check from all the callers.
2009-03-18st: need to free/realloc pipe texture when we're handed image level > last_levelBrian Paul
Fixes progs/tests/tri-fbo-tex-mip.c
2009-03-18st: clean up some if-statment codeBrian Paul
2009-03-18st: update texture commentsBrian Paul
2009-03-16gallium: Use struct pipe_atomic for pipe refcounts.Thomas Hellstrom
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>