draw: inject frontface info into wireframe outputs
authorZack Rusin <zackr@vmware.com>
Wed, 31 Jul 2013 11:34:49 +0000 (07:34 -0400)
committerZack Rusin <zackr@vmware.com>
Sat, 3 Aug 2013 00:11:18 +0000 (20:11 -0400)
commitd6b3a193d4d525c5048ebf793e6a63fd98f92d64
tree03fa602befb47cfa29efad7bc1c85e1ec645e92a
parent05487ef88ded5fea0b1de7bc08d44846648d1ce2
draw: inject frontface info into wireframe outputs

Draw module can decompose primitives into wireframe models, which
is a fancy word for 'lines', unfortunately that decomposition means
that we weren't able to preserve the original front-face info which
could be derived from the original primitives (lines don't have a
'face'). To fix it allow draw module to inject a fake face semantic
into outputs from which the backends can figure out the original
frontfacing info of the primitives.

Signed-off-by: Zack Rusin <zackr@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
14 files changed:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_context.h
src/gallium/auxiliary/draw/draw_pipe.h
src/gallium/auxiliary/draw/draw_pipe_unfilled.c
src/gallium/drivers/i915/i915_state_derived.c
src/gallium/drivers/llvmpipe/lp_context.h
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_setup_context.h
src/gallium/drivers/llvmpipe/lp_setup_line.c
src/gallium/drivers/llvmpipe/lp_setup_point.c
src/gallium/drivers/llvmpipe/lp_state_derived.c
src/gallium/drivers/r300/r300_state_derived.c
src/gallium/drivers/softpipe/sp_state_derived.c
src/gallium/drivers/svga/svga_swtnl_state.c