diff options
author | José Fonseca <[email protected]> | 2010-06-01 16:28:45 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2010-06-01 16:39:03 +0100 |
commit | 149cb7682e37ce719d693f120e68dde60ba73bdf (patch) | |
tree | 05c5bdefb18624cf2f3f2f0f9035e7147426bce5 /src/gallium/drivers/llvmpipe/lp_setup.h | |
parent | abe4f3d1aa68aec70d329447abc890b3eaaba9cb (diff) |
llvmpipe: Don't waste time interpolating unused input channels.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_setup.h')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_setup.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_setup.h b/src/gallium/drivers/llvmpipe/lp_setup.h index 719cf98454f..6a0dc551290 100644 --- a/src/gallium/drivers/llvmpipe/lp_setup.h +++ b/src/gallium/drivers/llvmpipe/lp_setup.h @@ -41,8 +41,11 @@ enum lp_interp { LP_INTERP_FACING }; -/* Describes how to generate all the fragment shader inputs from the - * the vertices passed into our triangle/line/point functions. + +/** + * Describes how to compute the interpolation coefficients (a0, dadx, dady) + * from the vertices passed into our triangle/line/point functions by the + * draw module. * * Vertices are treated as an array of float[4] values, indexed by * src_index. @@ -50,6 +53,7 @@ enum lp_interp { struct lp_shader_input { enum lp_interp interp; /* how to interpolate values */ unsigned src_index; /* where to find values in incoming vertices */ + unsigned usage_mask; /* bitmask of TGSI_WRITEMASK_x flags */ }; struct pipe_resource; |