diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/tnl/t_imm_eval.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/mesa/tnl/t_imm_eval.c b/src/mesa/tnl/t_imm_eval.c index f70f94aae6..c25b03725a 100644 --- a/src/mesa/tnl/t_imm_eval.c +++ b/src/mesa/tnl/t_imm_eval.c @@ -1,4 +1,4 @@ -/* $Id: t_imm_eval.c,v 1.16 2001/08/14 00:52:47 keithw Exp $ */ +/* $Id: t_imm_eval.c,v 1.17 2001/08/14 00:59:08 keithw Exp $ */ /* * Mesa 3-D graphics library @@ -206,13 +206,15 @@ static void eval2_obj_norm( GLvector4f *obj_ptr, _math_de_casteljau_surf(map->Points, obj[i], du, dv, u, v, dimension, map->Uorder, map->Vorder); -/* du[0] = du[0]*obj[i][3] - du[3]*obj[i][0]; */ -/* du[1] = du[1]*obj[i][3] - du[3]*obj[i][1]; */ -/* du[2] = du[2]*obj[i][3] - du[3]*obj[i][2]; */ + if (dimension == 4) { + du[0] = du[0]*obj[i][3] - du[3]*obj[i][0]; + du[1] = du[1]*obj[i][3] - du[3]*obj[i][1]; + du[2] = du[2]*obj[i][3] - du[3]*obj[i][2]; -/* dv[0] = dv[0]*obj[i][3] - dv[3]*obj[i][0]; */ -/* dv[1] = dv[1]*obj[i][3] - dv[3]*obj[i][1]; */ -/* dv[2] = dv[2]*obj[i][3] - dv[3]*obj[i][2]; */ + dv[0] = dv[0]*obj[i][3] - dv[3]*obj[i][0]; + dv[1] = dv[1]*obj[i][3] - dv[3]*obj[i][1]; + dv[2] = dv[2]*obj[i][3] - dv[3]*obj[i][2]; + } CROSS3(normal[i], du, dv); NORMALIZE_3FV(normal[i]); |