[Mesa-dev] [PATCH 4/7] mesa: Avoid using the shine table for _tnl_RasterPos

Mathias Fröhlich Mathias.Froehlich at gmx.net
Wed Feb 29 10:47:17 PST 2012


Use direct computation of pow for computing the shininess
in _tnl_RasterPos. Since the _tnl_RasterPos function is still
used by plenty drivers that do only need the shine table for
_tnl_RasterPos but do not make use of swtnl computations, this
enables pushing down the shine table computation and validation
into the tnl module, which will happen in a followup change.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich at web.de>
---
 src/mesa/tnl/t_rasterpos.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/src/mesa/tnl/t_rasterpos.c b/src/mesa/tnl/t_rasterpos.c
index 17611cd..38f63b2 100644
--- a/src/mesa/tnl/t_rasterpos.c
+++ b/src/mesa/tnl/t_rasterpos.c
@@ -214,7 +214,11 @@ shade_rastpos(struct gl_context *ctx,
 	 n_dot_h = DOT3(normal, h);
 
 	 if (n_dot_h > 0.0F) {
-	    GLfloat spec_coef = _mesa_lookup_shininess(ctx, 0, n_dot_h);
+	    GLfloat shine;
+	    GLfloat spec_coef;
+
+	    shine = ctx->Light.Material.Attrib[MAT_ATTRIB_FRONT_SHININESS][0];
+	    spec_coef = powf(n_dot_h, shine);
 
 	    if (spec_coef > 1.0e-10) {
                if (ctx->Light.Model.ColorControl==GL_SEPARATE_SPECULAR_COLOR) 
{
-- 
1.7.7.6


More information about the mesa-dev mailing list