summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker
AgeCommit message (Collapse)Author
2008-02-12gallium: fix/finish glReadPixels(GL_DEPTH_COMPONENT).Brian
This fixes demos/reflect ('d' key) and tests/zreaddraw.c
2008-02-12gallium: clamp min_lod so it's never negativeBrian
2008-02-12gallium: remove dead codeBrian
2008-02-12gallium: added null ptr checkBrian
2008-02-12gallium: rename st_fragment_program's fs field to cso to match st_vertex_programBrian
2008-02-12gallium: move gen-mipmap global/static vars into st_contextBrian
This fixes potential problems with multi-context programs.
2008-02-12gallium: remove unused first_level param from st_texture_create()Brian
2008-02-12gallium: clean-up, simplification of mipmapped texturesBrian
Remove pipe_texture->first_level (always implicitly zero). This means there's never any unused mipmap levels at the top. In the state tracker, we no longer re-layout mipmapped textures if the MinLod/MaxLod texture parameters change. It's up to the driver to obey the pipe_sampler->min/max_lod clamps.
2008-02-11gallium: take pitch/stride into account in mipmap generationBrian
2008-02-11gallium: comments about mipmap genBrian
2008-02-11gallium: implement software fallback for mipmap generationBrian
This is used when we can't render to the surface type of the texture (such as luminance/alpha).
2008-02-11gallium: strip borders from textures passed to st_TexImage.Brian
Manipulate the unpack params to skip the border. Gallium drivers won't support texture borders.
2008-02-11gallium: use _mesa_tex_target_to_face()Brian
2008-02-08gallium: include st_cb_drawpixels.hBrian
2008-02-08gallium: initial implemenation of auto mipmap generation in state trackerBrian
Use hardware rendering to compute/render mipmap levels. The fallback path (which will be used for non-renderable texture formats) isn't working yet.
2008-02-08gallium: added inClipCoords param to st_draw_vertices() to indicate coord ↵Brian
system of vertices Also, export st_make_passthrough_vertex_shader() from st_cb_drawpixels.c
2008-02-06gallium: change pipe->texture_create() to operate like the CSO functionsBrian
Now, pass in a template object and return a new object.
2008-02-06clean-ups in guess_and_alloc_texture()Brian
2008-02-06plug in ctx->Driver.GenerateMipmap functionBrian
2008-02-06clean-upsBrian
2008-02-06added commentBrian
2008-02-06comments, clean-ups, constsBrian
2008-02-06clean-upBrian
2008-02-06gallium: add bitmap/drawpixels texcoord bias supportBrian
The state tracker will call pipe->get_paramf(PIPE_CAP_BITMAP_TEXCOORD_BIAS) to get a bias factor for adjusting the texcoords used in bitmap/drawpixels. This allows us to compensate for small differences in rasterization from one device to another.
2008-01-31gallium: fix problem in which texcoords and varying vars got mapped to the ↵Brian
same slot This fixes the glsl/bump.c and glsl/texdemo1.c programs
2008-01-31Fix problem in mapping vertex program outputs (found with "spring" game engine)Brian
If the vertex program writes to an output that's not consumed by the fragment program, map the vp output to an unused slot.
2008-01-29gallium: don't rely on assert(0) for error handling - may be disabledKeith Whitwell
2008-01-28gallium: check if surface has defined status in check_clear_depth_with_quad()Brian
This was part of Keith's patch from Friday.
2008-01-26gallium: minor cleanups to pipe interfaceKeith Whitwell
- Remove put/get tile, just have users call put_tile_raw, etc directly. - Remove surface_data call, just map it locally.
2008-01-26gallium: add notify_swapbuffers_complete, use it to set surfaces to ↵Keith Whitwell
undefined state
2008-01-26gallium: specialize glFlush vs other flush semanticsKeith Whitwell
2008-01-25gallium: replace prim pipeline begin/end() functions with flush()Brian
This is basically half of Keith's draw/flush patch. The stage->point/line/tri() functions are now self-validating, the validator functions are installed by the flush() function. There were excessive calls to validate_pipeline(), however. This was caused by draw_prim_queue_flush() keeping a local 'first' variable that always pointed to the validate functions. Replaced 'first' with 'draw->pipeline.first'. Performance in gears is up just slightly with this patch.
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-25gallium: Simplify winsys buffer interface.Michel Dänzer
The properties of a buffer represented by struct pipe_buffer_handle are now basically constant over its lifetime. The state tracker gets to deal with any more complex buffer semantics it may need to provide.
2008-01-25gallium: added rastpos_destroy()Brian
2008-01-24gallium: added rastpos_destroy()Brian
2008-01-23gallium: remove support for separate depth/stencil buffers. Always combined ↵Brian
now.
2008-01-23gallium: overhaul usage of vertex_info in draw module.Brian
Remove all dependencies on vertex_info, except for draw_vbuf. Drawing stages now strictly operate on post-transformed vertices and don't know anything about hw vertices. Use vertex program output info for two-side/flat/etc stages. Temporarily disable vbuf module in softpipe driver.
2008-01-23gallium: s/INTERP_NONE/INTERP_LINEAR/ to fix assertion with ↵Brian
progs/samples/select.c
2008-01-23gallium: fix computation of raster.point_size_per_vertex flagBrian
2008-01-22gallium: use temp reg for storing color to avoid reading 'result.color'Brian
2008-01-21gallium: silence warningsBrian
2008-01-17Revert "temporarily don't emit TGSI immediates, use the constant buffer"José Fonseca
This reverts commit 310e7ca44b33558a9aa22f43024d1bfb63642128.
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-17temporarily don't emit TGSI immediates, use the constant bufferBrian
This allows a few more programs to run and not crash. Need to get constant buffer uploads working...
2008-01-16tweaks to quad drawing, set UsesKill in bitmap shaderBrian
2008-01-16Fix a two-sided lighting bug (fixes samples/wave.c)Brian
2008-01-15include pipe/draw/draw_context.hBrian
2008-01-14free stvp->draw_shaderBrian
2008-01-14Fix problems with vertex shaders and the private draw module.Brian
The CSO returned by pipe->create_vs_state() can't be passed to the private draw module. That was causing glRasterPos to blow up. Add a 'draw_shader' field to st_vertex_program for use with the private draw module. Change st_context->state.vs type from cso_vertex_shader to st_vertex_program.