Module: Mesa Branch: master Commit: db4ccc004a96255f3ad0dc26467f2243a133c24b URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=db4ccc004a96255f3ad0dc26467f2243a133c24b
Author: Brian Paul <[email protected]> Date: Tue Apr 20 11:43:58 2010 -0600 llvmpipe: fix incorrect front-facing value for fragment shader The TGSI convention is +1 for front-facing, -1 for back-facing Fixes glean glsl1 gl_FrontFacing tests. --- src/gallium/drivers/llvmpipe/lp_setup_tri.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/src/gallium/drivers/llvmpipe/lp_setup_tri.c b/src/gallium/drivers/llvmpipe/lp_setup_tri.c index a950534..f8a5816 100644 --- a/src/gallium/drivers/llvmpipe/lp_setup_tri.c +++ b/src/gallium/drivers/llvmpipe/lp_setup_tri.c @@ -163,12 +163,17 @@ setup_fragcoord_coef(struct lp_setup_context *setup, } +/** + * Setup the fragment input attribute with the front-facing value. + * \param frontface is the triangle front facing? + */ static void setup_facing_coef( struct lp_setup_context *setup, struct lp_rast_triangle *tri, unsigned slot, boolean frontface ) { - constant_coef( setup, tri, slot, 1.0f - frontface, 0 ); + /* convert TRUE to 1.0 and FALSE to -1.0 */ + constant_coef( setup, tri, slot, 2.0f * frontface - 1.0f, 0 ); constant_coef( setup, tri, slot, 0.0f, 1 ); /* wasted */ constant_coef( setup, tri, slot, 0.0f, 2 ); /* wasted */ constant_coef( setup, tri, slot, 0.0f, 3 ); /* wasted */ _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
