Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | mesa: new _mesa_remove_varying_reads() function | Brian | 2008-04-07 | 2 | -2/+96 |
| | | | | | | | | We'll apply this function to GLSL vertex programs. In GLSL it's legal to read and write varying (output) vars in a vertex shader. But reading from an output register isn't supported by all hardware. This routine examines the vertex program for that condition and rewrites it to use temporary registers where needed. | ||||
* | mesa: added _mesa_insert_instructions() | Brian | 2008-04-07 | 2 | -10/+52 |
| | | | | Also, use new _mesa_free_instructions() in a few places. | ||||
* | mesa: added _mesa_free_instructions() | Brian | 2008-04-07 | 2 | -0/+20 |
| | |||||
* | draw: strip edgeflags out of fetch-emit path | Keith Whitwell | 2008-04-07 | 1 | -1/+1 |
| | |||||
* | draw: fix edgeflag handling on the pt paths | Keith Whitwell | 2008-04-06 | 4 | -175/+253 |
| | | | | | | | | | Encode edgeflags (and reset_stipple info) into the top two bits of the fetch elements. This info could be moved elsewhere, but for now we can live with a 1<<30 maximum element size... Also use the primitive decomposition code from draw_prim.c verbatim, as it includes all this stuff and is known to work. | ||||
* | draw: Use debug_printf(). | Michal Krol | 2008-04-05 | 1 | -2/+2 |
| | |||||
* | gallium: Keep fenced buffers list ordered. | José Fonseca | 2008-04-05 | 1 | -53/+99 |
| | | | | This allows to keep the list small without the overhead of full walks. | ||||
* | gallium: Fix typo. | José Fonseca | 2008-04-05 | 1 | -1/+1 |
| | |||||
* | gallium: Use the custom snprintf implementation everywhere (for Win32). | José Fonseca | 2008-04-05 | 2 | -8/+12 |
| | | | | Because winddk's implemenation does not handle floats. | ||||
* | mesa: no longer combine vertex/fragment shader parameters/uniforms | Brian | 2008-04-04 | 4 | -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 uniforms | Brian | 2008-04-04 | 2 | -0/+248 |
| | |||||
* | mesa: test code to exercise more GLSL functions | Brian | 2008-04-04 | 1 | -27/+18 |
| | |||||
* | mesa: added more ext funcs (from Mesa/master) | Brian | 2008-04-04 | 1 | -0/+24 |
| | |||||
* | gallium: always pass size=4 to make_immediate() | Brian | 2008-04-04 | 1 | -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 ↵ | Brian | 2008-04-04 | 1 | -8/+7 |
| | | | | update_samplers() | ||||
* | mesa: add missing glPush/PopMatrix() calls | Brian | 2008-04-04 | 1 | -0/+2 |
| | |||||
* | mesa: add missing glPush/PopMatrix() calls | Brian | 2008-04-04 | 1 | -0/+2 |
| | |||||
* | gallium: state tracker fixes for compressed textures | Roland Scheidegger | 2008-04-04 | 2 | -0/+9 |
| | |||||
* | gallium: add new call to st_flush_bitmap_cache() to fix recent regression | Brian Paul | 2008-04-04 | 1 | -0/+2 |
| | |||||
* | gallium: new debug code, disabled | Brian Paul | 2008-04-04 | 1 | -0/+15 |
| | |||||
* | gallium: make sure to set the SamplersUsed field for bitmap/drawpixels shaders | Brian Paul | 2008-04-04 | 4 | -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: Handle client-supplied edgeflags. | Keith Whitwell | 2008-04-04 | 7 | -28/+71 |
| | | | | | | | | Also, implement support in the draw module. We were hardwiring these to one for quite a long time... Currently using a draw_set_edgeflags() function, may be better to push the argument into the draw_arrays() function. TBD. | ||||
* | gallium: Revert st_gl_flush() changes from when the **fence argument was added. | Michel Dänzer | 2008-04-04 | 1 | -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änzer | 2008-04-04 | 1 | -1/+1 |
| | | | | | This is enough for the current purpose of st_finish(), which is to wait for things to settle down before context teardown. | ||||
* | draw: move code to run pipeline from pt to new file | Keith Whitwell | 2008-04-04 | 6 | -99/+196 |
| | | | | | Add facility for draw_vbuf.c to reset these vertex ids on flushes. Pre-initialize vertex ids correctly. | ||||
* | Alias glStencilOpSeparateATI with glStencilOpSeparate. | Brian | 2008-04-04 | 13 | -283/+168 |
| | |||||
* | test glStencilFuncSeparateATI() | Brian | 2008-04-04 | 1 | -0/+26 |
| | |||||
* | Finish up ATI_separate_stencil | Brian | 2008-04-04 | 14 | -1074/+1258 |
| | | | | | | Add entrypoints to glapi XML file and regenerate files. Implement glStencilOpSeparateATI(). Consolidate some code in stencil.c | ||||
* | add missing _mesa_StencilFuncSeparateATI function | Roland Scheidegger | 2008-04-04 | 2 | -0/+77 |
| | |||||
* | gallium: fix two-side stencil handling | Roland Scheidegger | 2008-04-04 | 2 | -2/+3 |
| | | | | | | | | | | | 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: make msvc less unhappy | Keith Whitwell | 2008-04-04 | 1 | -7/+8 |
| | |||||
* | gallium: Always allocate new const buffers instead of modifying existing ones. | Michel Dänzer | 2008-04-04 | 1 | -7/+6 |
| | |||||
* | cell: added some comments/ideas about better texture sampling | Brian | 2008-04-03 | 1 | -1/+17 |
| | |||||
* | cell: minor texture improvements | Brian | 2008-04-03 | 3 | -11/+26 |
| | | | | Precompute tiles_per_row. Use ushort multiplies in a few places. New comments. | ||||
* | gallium: test if PIPE_FORMAT_YCBCR[_REV] is supported and enable ↵ | Brian | 2008-04-03 | 2 | -8/+22 |
| | | | | | | GL_MESA_ycbcr_texture Update texture format selection code too. | ||||
* | gallium: implement ycbcr->rgba tile conversion | Brian | 2008-04-03 | 1 | -0/+71 |
| | |||||
* | gallium: set rasterizer.gl_rasterization_rules = 1 in a few more places | Brian | 2008-04-03 | 2 | -0/+2 |
| | |||||
* | gallium: streamline viewport/raster/shader state for clearing with quads | Brian Paul | 2008-04-03 | 4 | -37/+45 |
| | | | | Move init of these items to new st_init_clear(). | ||||
* | gallium: include st_cb_bitmap.h to silence warning | Brian Paul | 2008-04-03 | 1 | -0/+1 |
| | |||||
* | gallium: remove the temporary/test TEST_DRAW_PASSTHROUGH code | Brian Paul | 2008-04-03 | 1 | -12/+0 |
| | |||||
* | gallium: use identity viewport fix broken clear_with_quad() path | Brian Paul | 2008-04-03 | 1 | -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 Paul | 2008-04-03 | 1 | -0/+2 |
| | |||||
* | gallium: set gl_rasterization_rules | Brian Paul | 2008-04-03 | 1 | -0/+1 |
| | |||||
* | gallium: Only build softpipe driver by default for xlib winsys with scons. | Michel Dänzer | 2008-04-03 | 1 | -2/+0 |
| | |||||
* | draw: add passthrough path to the pipeline | Keith Whitwell | 2008-04-03 | 8 | -67/+424 |
| | | | | | | | This handles the case where bypass_vs is set, but vertices need to go through the pipeline for some reason - eg unfilled polygon mode. Demonstrates how to drive the pipeline from inside one of these things. | ||||
* | draw: add missing break statement | Keith Whitwell | 2008-04-02 | 1 | -0/+1 |
| | |||||
* | draw: Set the backend prim in the pt 'prepare' operation | Keith Whitwell | 2008-04-02 | 4 | -28/+31 |
| | | | | | | | Leaving it until 'run' is bad as the primitive is pretty much state for some drivers and so needs to get set early. In some drivers this is used to determine things like vertex format, etc -- by the time we get to 'run', it's too late to change this. | ||||
* | gallium: add a flag to turn on gl rasterization rules | Keith Whitwell | 2008-04-02 | 3 | -6/+16 |
| | | | | | | | 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 sizes | Keith Whitwell | 2008-04-02 | 3 | -1/+19 |
| | |||||
* | mesa: added a cast to avoid int overflow, plus rename texels->pixels | Brian | 2008-04-01 | 1 | -4/+4 |
| |