summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* mesa: no longer combine vertex/fragment shader parameters/uniformsBrian2008-04-044-270/+239
| | | | | | | GLSL Vertex and fragment shaders now have independent parameter buffers. A new gl_uniform_list is used to keep track of program uniforms and where each uniform is located in each shader's parameter buffer. This makes better use of the space in each buffer and simplifies shader linking.
* mesa: new functions for managing list/index of uniformsBrian2008-04-042-0/+248
|
* gallium: always pass size=4 to make_immediate()Brian2008-04-041-2/+1
| | | | | Mesa always packs 4 immediates into each parameter/const buffer slot. I think we were just getting lucky with this as it was.
* gallium: adjust the code in update_textures() to look more like ↵Brian2008-04-041-8/+7
| | | | update_samplers()
* gallium: state tracker fixes for compressed texturesRoland Scheidegger2008-04-042-0/+9
|
* gallium: add new call to st_flush_bitmap_cache() to fix recent regressionBrian Paul2008-04-041-0/+2
|
* gallium: make sure to set the SamplersUsed field for bitmap/drawpixels shadersBrian Paul2008-04-044-0/+5
| | | | | Also, make sure that field is copied/updated in the program clone and combine functions. Without this we weren't getting SAMP declarations in the TGSI shaders.
* gallium: Revert st_gl_flush() changes from when the **fence argument was added.Michel Dänzer2008-04-041-1/+10
| | | | | As st_gl_flush() isn't used by st_finish() anymore, it doesn't have to make sure pipe->flush() always gets called.
* gallium: Call st_flush() instead of st_gl_flush() in st_finish().Michel Dänzer2008-04-041-1/+1
| | | | | This is enough for the current purpose of st_finish(), which is to wait for things to settle down before context teardown.
* Alias glStencilOpSeparateATI with glStencilOpSeparate.Brian2008-04-0413-283/+168
|
* Finish up ATI_separate_stencilBrian2008-04-0414-1074/+1258
| | | | | | Add entrypoints to glapi XML file and regenerate files. Implement glStencilOpSeparateATI(). Consolidate some code in stencil.c
* add missing _mesa_StencilFuncSeparateATI functionRoland Scheidegger2008-04-042-0/+77
|
* 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.
* fix parsing bug involving comments at the end of ARB v/f programsMarkus Amsler2008-03-312-6/+6
|
* 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: Eliminate p_winsys::printfJosé Fonseca2008-03-311-10/+0
| | | | Not convenient and almost not used at all. Better replacements in p_debug.h
* 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.
* mesa: fix texture/renderbuffer mix-up in test_attachment_completeness()Brian Paul2008-03-281-1/+1
|
* 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.
* consolidate some parsing functions that were pretty much identical for ↵Brian2008-03-271-152/+71
| | | | | | vertex/fragment programs cherry-picked from master
* mesa: misc sync-up with masterBrian2008-03-271-3/+3
|
* raise GL_INVALID_OPERATION if glProgramString compilation failsBrian2008-03-271-1/+1
| | | | cherry-picked from master
* Fix the compile of disabled DEBUG_PARSING code.Brian2008-03-271-1/+1
| | | | cherry-picked from master
* make sure state token values are fully initializedBrian2008-03-271-1/+1
| | | | cherry-picked from master
* added program_error2() function for better error reportingBrian2008-03-271-47/+60
| | | | cherry-picked from master
* Fix state.texgen parsing error (bug 12313).Brian2008-03-271-5/+12
| | | | | | Replace *(*inst++) with *(*inst)++ in a few places. Cherry-picked from master.