Age | Commit message (Collapse) | Author | |
---|---|---|---|
2009-12-14 | gallium: more work for edgeflags changes | Roland Scheidegger | |
fixes, cleanups, etc. not working yet | |||
2009-12-09 | gallium: first steps to treat edgeflags as regular vertex element | Keith Whitwell | |
The idea here is to eliminate the set_edgeflags() call in pipe_context by treating edgeflags as a regular vertex element. Edgeflags provoke special treatment in hardware, which means we need to label them in some way, in this case we'll be passing them through the vertex shader and labelling the vertex shader output with a new TGSI semantic (TGSI_SEMANTIC_EDGEFLAG). | |||
2009-07-16 | gallium: reduce recursive include of tgsi_exec.h | Keith Whitwell | |
A lot of draw code no longer needs to see this header. | |||
2009-07-16 | gallium: proper constructor and destructor for tgsi_exec_machine | Keith Whitwell | |
Centralize the creation, initialization and destruction of this struct. Use align_malloc instead of home-brew alternatives. | |||
2008-12-10 | Merge commit 'origin/gallium-0.1' into gallium-0.2 | Brian Paul | |
2008-12-10 | gallium: added draw_set_mrd() function to fix polygon offset | Brian Paul | |
The Minimum Resolvable Depth factor depends on the driver and can't just be computed from the number of Z buffer bits. Glean's polygon offset test now passes with softpipe. Still need to determine the MRD factor for other gallium drivers, if they use the draw module's polygon offset stage... | |||
2008-12-04 | gallium: added draw_texture_samplers() to support texture fetches from ↵ | Brian | |
vertex shaders This may only be practical for the softpipe driver at this time. | |||
2008-10-10 | Merge commit 'origin/gallium-0.1' into gallium-0.2 | Keith Whitwell | |
Conflicts: src/gallium/auxiliary/gallivm/instructionssoa.cpp src/gallium/auxiliary/gallivm/soabuiltins.c src/gallium/auxiliary/rtasm/rtasm_x86sse.c src/gallium/auxiliary/rtasm/rtasm_x86sse.h src/mesa/main/texenvprogram.c src/mesa/shader/arbprogparse.c src/mesa/shader/prog_statevars.c src/mesa/state_tracker/st_draw.c src/mesa/vbo/vbo_exec_draw.c | |||
2008-10-10 | gallium: silence warning | Alan Hourihane | |
2008-10-07 | draw: add switch for drivers to force vertex data passthrough | Keith Whitwell | |
2008-07-28 | Merge tgsi/exec and tgsi/util directories. | José Fonseca | |
2008-06-11 | draw: don't assume vertex position is in data[0] | Keith Whitwell | |
2008-06-04 | draw: respect driver's max vertex buffer size | Keith Whitwell | |
2008-05-31 | draw: Remove const qualifier. | Michal Krol | |
2008-05-29 | draw: add more switches to turn FSE on/off | Keith Whitwell | |
2008-05-29 | draw: make sure constant buffer data is aligned before passing to aos.c | Keith Whitwell | |
2008-05-29 | draw: draw_range_elements trial | Keith Whitwell | |
2008-05-29 | draw: share machine | Keith Whitwell | |
2008-05-23 | draw: create specialized vs varients incorporating fetch & emit | Keith Whitwell | |
2008-05-23 | draw: move some state into a new 'vs' area | Keith Whitwell | |
2008-05-23 | draw: get rid of fetch-shade-emit frontend hack | Keith Whitwell | |
The code is now living in it's intended place as a pt middle end. | |||
2008-05-12 | draw: turn fse path into a middle end | Keith Whitwell | |
Also add some util functions in pt_util.c | |||
2008-05-12 | draw: add fetch-shade-emit path | Keith Whitwell | |
Enable with TEST_FSE=t. Performs fetch from API-provided vertex buffers, transformation with one of three (two working) hard-coded shaders, and final emit to hardware vertices all in a single pass. Currently only really useful for profiling in conjunction with SP_NO_RAST=t. | |||
2008-05-08 | redo the linear paths | Zack Rusin | |
2008-04-25 | frontend for rendering without elts | Zack Rusin | |
2008-04-24 | draw: handle edgeflags and reset-line-stipple again | Keith Whitwell | |
2008-04-23 | gallium: fix issues in recursive flushing | Brian Paul | |
When flushing/rendering, some stages (like AA line/point) need to set pipe/driver state. Those driver functions often call draw_flush(). That leads to recursion. Use new draw->suspend_flush flag to explicitly prevent that in the key places. Remove the draw->vcache_flushing field. Reuse draw->flushing as a debug/assertion var. | |||
2008-04-22 | gallium: added a flushing_vcache flag, test in draw_do_flush() | Brian Paul | |
Fixes broken polygon stipple, aaline, aapoint stages | |||
2008-04-22 | draw: allow drivers to query pipeline state more easily | Keith Whitwell | |
Also, provide a separate flag to say whether the driver can handle clipping/rhw tasks, in addition to the API flag which indicates they have already been done. | |||
2008-04-21 | gallium: Centralize SSE usage logic. | José Fonseca | |
2008-04-19 | draw: move incoming vertex state into draw->pt | Keith Whitwell | |
This state is effectively private to the vertex processing part of the draw module. | |||
2008-04-19 | draw: make draw_reset_vertex_ids private to the draw_pipe_* code | Keith Whitwell | |
2008-04-19 | draw: put pipeline flushing behind a new interface | Keith Whitwell | |
2008-04-19 | draw: move pt_pipeline code to draw_pipe.c | Keith Whitwell | |
This is now the drawing interface to the pipeline. No more calling into pipeline.first->tri(), etc. | |||
2008-04-19 | draw: move some pipeline-specific code & state to draw_pipe.[ch] | Keith Whitwell | |
2008-04-19 | draw: remove named clipmask flags, tidy up pt middle ends | Keith Whitwell | |
2008-04-19 | draw: remove more dead data structures | Keith Whitwell | |
2008-04-19 | draw: remove dead data structures | Keith Whitwell | |
2008-04-18 | draw: remove old draw_vertex_shader_queue_flush function | Keith Whitwell | |
2008-04-18 | draw: switch over to draw_pt paths, will remove old code shortly | Keith Whitwell | |
2008-04-18 | draw: split off all the extra functionality in the vertex shader | Keith Whitwell | |
This will at least allow us to make the initial gains to get decent vertex performance much more quickly & with higher confidence of getting it right. At some later point can look again at code-generating all the fetch/cliptest/viewport extras in the same block as the vertex shader. For now, just need to get some decent baseline performance. | |||
2008-04-17 | draw: move hw vertex emit to a new module | Keith Whitwell | |
2008-04-17 | draw: add vertex shader run_linear function | Keith Whitwell | |
2008-04-17 | draw: keep record of number of active vertex buffers | Keith Whitwell | |
2008-04-16 | draw: make pt run pipeline when need_pipeline is true, not just when clipped | Keith Whitwell | |
2008-04-14 | pass vertex size to shaders so that callee can decide on the size | Zack Rusin | |
of the vertices and not always have to use the maximum vertex allocation size for them | |||
2008-04-14 | draw: hide passthrough shading paths behind an environment variable | Keith Whitwell | |
2008-04-14 | Make shaders operate on a block of memory instead of arrays of vertex_header's | Zack Rusin | |
2008-04-14 | return true if one of the vertices has been clipped | Zack Rusin | |
2008-04-14 | pass arbitrary number of vertices to the shader execution cycle | Zack Rusin | |