Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-06-17 | draw: implement line strip adjacency | Zack Rusin | |
2010-06-17 | draw: implement lines with adjacency in geometry shaders | Zack Rusin | |
2010-06-17 | draw: validate stream output buffers | Zack Rusin | |
fixes a crash. | |||
2010-06-17 | draw: fix some unsigned issue | Zack Rusin | |
spotted by Vinson | |||
2010-06-16 | draw: make sure we correctly iterate over output buffers on stream out | Zack Rusin | |
we kept overwriting the first attribute of a vertex in a single-stream- out-buffer case | |||
2010-06-16 | draw: add stream output decomposition file | Zack Rusin | |
2010-06-16 | draw: rewrite stream output to handle all the dark corners | Zack Rusin | |
register masks, multiple output buffers, multiple primitives, non-linear vertices (elts) and stride semantics. | |||
2010-06-16 | draw: add alloc check | Alan Hourihane | |
2010-06-16 | draw: handle some out of memory conditions | Alan Hourihane | |
2010-06-15 | draw: Remove unnecessary headers. | Vinson Lee | |
2010-06-15 | gs: make sure we end primitives when finishing executing shaders | Zack Rusin | |
2010-06-15 | draw/gs: make sure gs works with elts and doesn't overrun the buffer | Zack Rusin | |
2010-06-15 | draw: run the pipeline with the correct number of verts | Zack Rusin | |
verts per primitive, not total count | |||
2010-06-15 | draw: fix primitive indexing in the pipeline | Zack Rusin | |
spotted by Keith | |||
2010-06-15 | draw: finish the new pipeline setup | Zack Rusin | |
Keith came up with a new way of running the pipeline which involves passing a few info structs around (for fetch, vertices and prims) and allows us to correctly handle cases where we endup with multiple primitives generated by the pipeline itself. | |||
2010-06-15 | draw wip | Keith Whitwell | |
2010-06-12 | draw/gs: copy the outputs only if we emitted something | Zack Rusin | |
2010-06-11 | gallium/softpipe/draw: support samplers in geometry shaders | Zack Rusin | |
2010-06-10 | draw: forgot to add a file | Zack Rusin | |
2010-06-10 | draw: rewrite geometry shader pipeline | Zack Rusin | |
done to handle strips correctly as inputs - we need to decompose the strips | |||
2010-06-10 | draw: geometry shader fixes | Zack Rusin | |
don't overwrite the inputs and make sure the correct primitive is used on entry | |||
2010-06-10 | draw: make sure that the gs never outputs more data than we allocated for | Zack Rusin | |
2010-06-09 | draw: make sure geometry shader correctly iterates the output buffer | Zack Rusin | |
2010-06-09 | draw: make sure the buffer is big enough to fit everything emitted by the gs | Zack Rusin | |
2010-06-09 | draw: fix geometry shader which emit multiplie primitives | Zack Rusin | |
2010-06-09 | geometry shaders: make gs work with changable primitives and variable number ↵ | Zack Rusin | |
of vertices lots and lots of fixes for geometry shaders. in particular now we work when the gs emits a different primitive than the one the pipeline was started with and also we work when gs emits more vertices than would fit in the original buffer. | |||
2010-06-08 | draw: Remove unnecessary headers. | Vinson Lee | |
2010-06-08 | gallium: scream when one of two unimplemented features in draw is used | Zack Rusin | |
plus used the correctly specified stride | |||
2010-06-08 | gallium: make draw auto work and add relevant caps and docs | Zack Rusin | |
2010-06-08 | gallium: a lot more complete implementation of stream output | Zack Rusin | |
interface wise we have everything needed by d3d10 and gl transform feedback. the draw module misses implementation of some corner cases (e.g. when stream output wants different number of components per output than normal rendering paths) | |||
2010-06-08 | gallium: basic and initial implementation of the stream output interface | Zack Rusin | |
aka transform feedback | |||
2010-06-07 | draw: don't use llvm engine when geometry shaders active | Keith Whitwell | |
They aren't implemented for llvm. | |||
2010-05-30 | draw: Use pointer_to_func() instead of custom wrappers. | José Fonseca | |
2010-05-21 | Merge branch 'gallium-front-ccw' | Keith Whitwell | |
2010-05-14 | draw: fix front/back error in unfilled pipeline stage | Keith Whitwell | |
2010-05-14 | draw: fix typo checking for unfilled polygons | Keith Whitwell | |
2010-05-14 | gallium: convert rasterizer state to use gl-style front/back concepts | Keith Whitwell | |
Use front/back instead of cw/ccw throughout. Also, use offset_point/line/fill instead of offset_cw/ccw. Brings gallium representation of this state into line with its main user, and also what turns out to be the most common hardware representation. This fixes a long-standing bias in the interface towards the architecture of the software rasterizer. | |||
2010-05-13 | draw: silence casting warnings | Brian Paul | |
2010-05-08 | gallivm: Add an alternative to LLVMDumpValue that works with Windows GUI apps. | José Fonseca | |
2010-05-07 | gallium/draw: additional comments in the clipping code | Brian Paul | |
2010-05-06 | gallivm: Require SSE2 for draw_llvm/llvmpipe due to LLVM PR6960. | Török Edwin | |
Note that this also requires X86 for llvm, if llvmpipe/draw_llvm works on PPC then the condition should be extended to include && x86. Signed-off-by: Török Edwin <edwintorok@gmail.com> Signed-off-by: José Fonseca <jfonseca@vmware.com> | |||
2010-05-05 | gallium: still more provoking vertex fixes | Brian Paul | |
This fixes edge flags for polygons and provoking vertex for filled quads. | |||
2010-05-05 | gallium: added edge flag print/debug code (disabled) | Brian Paul | |
2010-05-05 | gallium: rename draw() to draw_elements() in vbuf code | Brian Paul | |
Now we have draw_elements() and draw_arrays() to be consistent with the pipe_context drawing functions. | |||
2010-05-05 | gallium: rework provoking vertex code | Brian Paul | |
Builds on commit ddb0e18f6c5582d4d2cc59ffd16ad9c4639ed059 and fixes regressions in glean clipFlat test. We assume that Gallium drivers observe flatshade_first for all triangles and that all the assorted per-triangle calls in the 'draw' module also follow flatshade_first. Everything else builds on those rules. Gallium does not use follow flatshade_first for GL quads, quad strips and polygons; the "last" vertex is always the provoking vertex for those prims. So now there are separate QUAD_FIRST_PV and QUAD_LAST_PV macros in the draw primitive decomposition code instead of one QUAD macro. | |||
2010-05-04 | draw: Remove unnecessary header. | Vinson Lee | |
2010-05-05 | draw: Preserve the provoking vertex both when decomposing and clipping. | José Fonseca | |
Based on John Lawless' feedback. | |||
2010-05-05 | draw: Adjust wideline vertex coords for D3D. | Brian Paul | |
2010-05-03 | Reorder LLVM passes, running mem2reg earlier. | Török Edwin | |
This gives a ~30% shader optimization time improvement on blender. Tested by comparing the dumped LLVM modules. Current ordering: time ~/llvm-git/obj/Release-Asserts/bin/opt l.bc -constprop -instcombine -mem2reg -gvn -simplifycfg real 0m1.126s user 0m1.108s sys 0m0.012s With this patch: time ~/llvm-git/obj/Release-Asserts/bin/opt l.bc -mem2reg -constprop -instcombine -gvn -simplifycfg real 0m0.885s user 0m0.880s sys 0m0.000s The overall improvement in blender is ~15%. Blender without the patch takes 1m13s: edwin 5934 87.6 11.5 729440 458296 pts/5 SLl+ 17:35 1:13 blender Blender with the patch takes 1m3s: edwin 5726 94.2 11.2 716424 446168 pts/5 SLl+ 17:32 1:03 blender It is still slow with the patch, but better (most of the optimization time is taken up by GVN, see LLVM PR7023). Signed-off-by: Török Edwin <edwintorok@gmail.com> Signed-off-by: José Fonseca <jfonseca@vmware.com> | |||
2010-05-03 | draw: Remove draw_pt_fetch_prepare call from llvm middle end. | José Fonseca | |
Unneeded since we code generate the vertex fecthes. |