summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
Commit message (Collapse)AuthorAgeFilesLines
* gallium: fix two-side stencil handlingRoland Scheidegger2008-04-041-1/+2
| | | | | | | | | | | Previously all drivers were in twosided mode since they checked for stencil.enable[1] flag which was a copy of stencil.enable[0]. Note that drivers should not reference stencil[1] state (other than the enable) if twosided stenciling is disabled (for now the stencil state is still copied but for instance clear_with_quads won't provide useful values in there). Also, use _TestTwoSide instead of TestTwoSide since results would be bogus otherwise if using APIs with implicit two side stencil enable (i.e. core ogl 2.0).
* gallium: Always allocate new const buffers instead of modifying existing ones.Michel Dänzer2008-04-041-7/+6
|
* gallium: test if PIPE_FORMAT_YCBCR[_REV] is supported and enable ↵Brian2008-04-032-8/+22
| | | | | | GL_MESA_ycbcr_texture Update texture format selection code too.
* gallium: set rasterizer.gl_rasterization_rules = 1 in a few more placesBrian2008-04-032-0/+2
|
* gallium: streamline viewport/raster/shader state for clearing with quadsBrian Paul2008-04-034-37/+45
| | | | Move init of these items to new st_init_clear().
* gallium: include st_cb_bitmap.h to silence warningBrian Paul2008-04-031-0/+1
|
* gallium: remove the temporary/test TEST_DRAW_PASSTHROUGH codeBrian Paul2008-04-031-12/+0
|
* gallium: use identity viewport fix broken clear_with_quad() pathBrian Paul2008-04-031-7/+5
| | | | | Since bypass_clipping is set and we're specifying quad vertexes in window coords, setup identity viewport.
* gallium: call st_flush_bitmap_cache()Brian Paul2008-04-031-0/+2
|
* gallium: set gl_rasterization_rulesBrian Paul2008-04-031-0/+1
|
* gallium: add a flag to turn on gl rasterization rulesKeith Whitwell2008-04-021-0/+2
| | | | | | | Use this to set up hardware rasterization (if your hardware can do it) or otherwise turn on various tweaks in the draw module. Currently only hooked up to point biasing code.
* gallium: add temporary facility for rasterization-time clamping of point sizesKeith Whitwell2008-04-021-0/+4
|
* gallium: init ctx->Const.MaxTextureUnitsBrian2008-04-011-1/+2
|
* handle IsPositionInvariant flagBen Skeggs2008-04-011-0/+4
|
* gallium: Fencing fix.Michel Dänzer2008-04-011-1/+1
| | | | | | Make sure the struct pipe_fence_handle* we point st_flush() to is initialized to NULL, so winsys->fence_reference() doesn't try to unreference a random struct pipe_fence_handle* pointer.
* gallium: used inverted bitmap texture to simplify the fragment shader.Brian2008-03-311-29/+20
| | | | | | "Off" bits get stored as texel=0xff and "on" bits get stored as texel=0x0. Then use KIL -tmp to kill the off bits and keep the on bits. This shortens the fragment program by two instructions.
* gallium: use cso_save/restore_sampler_textures() functionsBrian2008-03-312-11/+7
|
* gallium: set the bypass_vs flag nowBrian2008-03-311-1/+2
| | | | | The glBitmap vertex shader is a no-op, but we still have to specify it in order to convey the number of inputs/outputs.
* gallium: turn on clipping for bitmapsBrian2008-03-312-36/+60
| | | | | Bitmaps can extend beyond window edges so we need to clip. Also, move some state atom vars to st_context to be a bit more efficient.
* gallium: Set vertex state/buffers en-mass.Brian Paul2008-03-291-39/+43
|
* gallium: begin some bounding box code for bitmap cacheBrian2008-03-281-20/+52
|
* gallium: added an (int) cast in setup_bitmap_vertex_data() to fix a ↵Brian2008-03-281-1/+1
| | | | | | signed/unsigned arithmetic problem Negative values became very large uints.
* gallium: don't call st_flush_bitmap_cache() if the only change is ↵Brian2008-03-281-1/+6
| | | | _NEW_PACKUNPACK state
* gallium: disable a debug hackBrian2008-03-281-1/+1
|
* gallium: implement a glBitmap cacheBrian2008-03-286-12/+236
| | | | | | | The bitmap cache attempts to accumulate a series of glBitmap calls in a buffer to effectively render a whole bunch of bitmaps at once. The cache can be disabled, if needed, by setting UseBitmapCache=GL_FALSE.
* gallium: re-work texture format selection codeBrian Paul2008-03-281-167/+93
| | | | Use same code for choosing texture format and renderbuffer format.
* gallium: remove redundant compare bit in sampler stateRoland Scheidegger2008-03-281-1/+0
|
* gallium: replace PIPE_ATTRIB_MAX with PIPE_MAX_ATTRIBSBrian2008-03-271-1/+1
| | | | | The later follows the naming scheme of other limits. Keep the old definition until all possible usage is updated.
* gallium: Update calls to the simple shader functionsBrian2008-03-273-3/+9
|
* gallium: fix Element() macro redefinition warningBrian2008-03-271-0/+2
|
* gallium: need to call st_validate_state() in Bitmap()Brian Paul2008-03-261-0/+2
|
* gallium: Change pipe->flush() interface to optionally return a fence.Michel Dänzer2008-03-267-22/+30
| | | | | The cell driver still uses an internal CELL_FLUSH_WAIT flag, in the long run proper fencing should be implemented for it.
* gallium: disable the selection/feedback draw module's options for wide ↵Brian Paul2008-03-251-0/+8
| | | | | | | lines, points, etc. Disable paths that would convert points/lines to tris as that upsets selection, feedback, rastpos.
* gallium: added some debug code (disable)Brian Paul2008-03-251-0/+6
|
* gallium: don't enable stencil test if no stencil buffer.Brian Paul2008-03-241-1/+4
| | | | Also, if not doing two-sided stencil, set back-face state = front-face state.
* gallium: save/restore samplers in draw_textured_quad()Brian2008-03-241-3/+2
|
* gallium: fix a few texture border/mipmap glitches found w/ conformBrian Paul2008-03-241-14/+13
|
* gallium: check SamplersUsed to determine if texture needed, as in ↵Brian Paul2008-03-241-16/+15
| | | | | | | st_atom_sampler.c Otherwise, we were sometimes setting texture state but not the corresponding sampler state.
* gallium: free bitmap fragment shaders, misc clean-upBrian Paul2008-03-245-10/+15
|
* gallium: add missing cso_save_samplers() callBrian Paul2008-03-241-0/+1
|
* gallium: pass the filter mode to util_gen_mipmap().Brian2008-03-241-1/+2
| | | | Remove util_gen_mipmap_filter() when no longer used.
* gallium: fix a few more shader-related mem leaksBrian2008-03-224-42/+45
|
* gallium: fix a few mem leaks when deleting programsBrian2008-03-221-13/+20
|
* gallium: fix const buffer update bugBrian2008-03-211-3/+4
| | | | | | | If only glUniform is called between two renderings, the const buffers weren't getting updated. Need to set the _NEW_PROGRAM flag in st_upload_constants() as that's the dirty flag set by glUniform. Fixes glean tapi2 test.
* Refactor PBO validate/map code.Brian2008-03-213-8/+3
| | | | | | We always need to do PBO validation, so do that in core Mesa before calling driv er routine. cherry-picked from Mesa/master.
* gallium: implement PBO operations for glDraw/ReadPixels and glBitmapBrian Paul2008-03-213-28/+35
| | | | | | At this time there are no optimizations for directly blitting between buffer objects and surfaces (always go through mappings). glean pbo test passes now
* gallium: use is_format_supported(PIPE_FORMAT_DXT5_RGBA) to check if s3tc is ↵Brian Paul2008-03-211-4/+6
| | | | | | supported The PIPE_CAP_S3TC token will be deprecated.
* gallium: use is_format_supported() to determine if GL_EXT_texture_sRGB is ↵Brian Paul2008-03-211-1/+4
| | | | supported
* gallium: catch some out of memory conditions in the texture image code.Brian Paul2008-03-202-5/+13
| | | | | st_finalize_texture()'s return code now indicates success/fail instead of presence of texture border (which we discard earlier).
* gallium: assign framebuffer width, heightBrian2008-03-201-0/+3
|