summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-04-07gallium: clean-up in st_renderbuffer_alloc_storage()Brian Paul
2008-04-07mesa: call _mesa_remove_varying_reads() after compiling vertex shadersBrian
2008-04-07mesa: new _mesa_remove_varying_reads() functionBrian
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.
2008-04-07mesa: added _mesa_insert_instructions()Brian
Also, use new _mesa_free_instructions() in a few places.
2008-04-07mesa: added _mesa_free_instructions()Brian
2008-04-07draw: strip edgeflags out of fetch-emit pathKeith Whitwell
2008-04-06draw: fix edgeflag handling on the pt pathsKeith Whitwell
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.
2008-04-05draw: Use debug_printf().Michal Krol
2008-04-05gallium: Keep fenced buffers list ordered.José Fonseca
This allows to keep the list small without the overhead of full walks.
2008-04-05gallium: Fix typo.José Fonseca
2008-04-05gallium: Use the custom snprintf implementation everywhere (for Win32).José Fonseca
Because winddk's implemenation does not handle floats.
2008-04-04mesa: no longer combine vertex/fragment shader parameters/uniformsBrian
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.
2008-04-04mesa: new functions for managing list/index of uniformsBrian
2008-04-04mesa: test code to exercise more GLSL functionsBrian
2008-04-04mesa: added more ext funcs (from Mesa/master)Brian
2008-04-04gallium: always pass size=4 to make_immediate()Brian
Mesa always packs 4 immediates into each parameter/const buffer slot. I think we were just getting lucky with this as it was.
2008-04-04gallium: adjust the code in update_textures() to look more like ↵Brian
update_samplers()
2008-04-04mesa: add missing glPush/PopMatrix() callsBrian
2008-04-04mesa: add missing glPush/PopMatrix() callsBrian
2008-04-04gallium: state tracker fixes for compressed texturesRoland Scheidegger
2008-04-04gallium: add new call to st_flush_bitmap_cache() to fix recent regressionBrian Paul
2008-04-04gallium: new debug code, disabledBrian Paul
2008-04-04gallium: make sure to set the SamplersUsed field for bitmap/drawpixels shadersBrian Paul
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.
2008-04-04gallium: Handle client-supplied edgeflags.Keith Whitwell
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.
2008-04-04gallium: Revert st_gl_flush() changes from when the **fence argument was added.Michel Dänzer
As st_gl_flush() isn't used by st_finish() anymore, it doesn't have to make sure pipe->flush() always gets called.
2008-04-04gallium: Call st_flush() instead of st_gl_flush() in st_finish().Michel Dänzer
This is enough for the current purpose of st_finish(), which is to wait for things to settle down before context teardown.
2008-04-04draw: move code to run pipeline from pt to new fileKeith Whitwell
Add facility for draw_vbuf.c to reset these vertex ids on flushes. Pre-initialize vertex ids correctly.
2008-04-04Alias glStencilOpSeparateATI with glStencilOpSeparate.Brian
2008-04-04test glStencilFuncSeparateATI()Brian
2008-04-04Finish up ATI_separate_stencilBrian
Add entrypoints to glapi XML file and regenerate files. Implement glStencilOpSeparateATI(). Consolidate some code in stencil.c
2008-04-04add missing _mesa_StencilFuncSeparateATI functionRoland Scheidegger
2008-04-04gallium: fix two-side stencil handlingRoland Scheidegger
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).
2008-04-04gallium: make msvc less unhappyKeith Whitwell
2008-04-04gallium: Always allocate new const buffers instead of modifying existing ones.Michel Dänzer
2008-04-03cell: added some comments/ideas about better texture samplingBrian
2008-04-03cell: minor texture improvementsBrian
Precompute tiles_per_row. Use ushort multiplies in a few places. New comments.
2008-04-03gallium: test if PIPE_FORMAT_YCBCR[_REV] is supported and enable ↵Brian
GL_MESA_ycbcr_texture Update texture format selection code too.
2008-04-03gallium: implement ycbcr->rgba tile conversionBrian
2008-04-03gallium: set rasterizer.gl_rasterization_rules = 1 in a few more placesBrian
2008-04-03gallium: streamline viewport/raster/shader state for clearing with quadsBrian Paul
Move init of these items to new st_init_clear().
2008-04-03gallium: include st_cb_bitmap.h to silence warningBrian Paul
2008-04-03gallium: remove the temporary/test TEST_DRAW_PASSTHROUGH codeBrian Paul
2008-04-03gallium: use identity viewport fix broken clear_with_quad() pathBrian Paul
Since bypass_clipping is set and we're specifying quad vertexes in window coords, setup identity viewport.
2008-04-03gallium: call st_flush_bitmap_cache()Brian Paul
2008-04-03gallium: set gl_rasterization_rulesBrian Paul
2008-04-03gallium: Only build softpipe driver by default for xlib winsys with scons.Michel Dänzer
2008-04-03draw: add passthrough path to the pipelineKeith Whitwell
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.
2008-04-02draw: add missing break statementKeith Whitwell
2008-04-02draw: Set the backend prim in the pt 'prepare' operationKeith Whitwell
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.
2008-04-02gallium: add a flag to turn on gl rasterization rulesKeith Whitwell
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.