draw: implement proper primitive assembler as a pipeline stage

Graphics / Mesa 3D Graphics Library / Mesa - Zack Rusin [vmware.com] - 2 August 2013 23:38 UTC

we used to have a face primitive assembler that we ran after if the gs was missing but we had adjacency primitives in the pipeline, lets convert it to a pipeline stage, which allows us to use it to inject outputs (primitive id) into the vertices. it's also a lot cleaner because the decomposition is already handled for us.

c9c211f draw: implement proper primitive assembler as a pipeline stage
src/gallium/auxiliary/Makefile.sources | 2 +-
src/gallium/auxiliary/draw/draw_context.c | 1 +
src/gallium/auxiliary/draw/draw_pipe.c | 4 +
src/gallium/auxiliary/draw/draw_pipe.h | 5 +
src/gallium/auxiliary/draw/draw_pipe_ia.c | 250 ++++++++++++++++++++
src/gallium/auxiliary/draw/draw_pipe_validate.c | 15 +-
src/gallium/auxiliary/draw/draw_prim_assembler.c | 225 ------------------
src/gallium/auxiliary/draw/draw_prim_assembler.h | 62 -----
.../auxiliary/draw/draw_prim_assembler_tmp.h | 31 ---
src/gallium/auxiliary/draw/draw_private.h | 1 +
.../auxiliary/draw/draw_pt_fetch_shade_pipeline.c | 18 +-
.../draw/draw_pt_fetch_shade_pipeline_llvm.c | 18 +-
12 files changed, 280 insertions(+), 352 deletions(-)

Upstream: cgit.freedesktop.org


  • Share