diff options
Diffstat (limited to 'src/mesa/main/light.c')
-rw-r--r-- | src/mesa/main/light.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mesa/main/light.c b/src/mesa/main/light.c index 35ec1547e98..63f88b7229f 100644 --- a/src/mesa/main/light.c +++ b/src/mesa/main/light.c @@ -125,11 +125,11 @@ _mesa_light(GLcontext *ctx, GLuint lnum, GLenum pname, const GLfloat *params) if (light->SpotCutoff == params[0]) return; FLUSH_VERTICES(ctx, _NEW_LIGHT); - light->SpotCutoff = params[0];
+ light->SpotCutoff = params[0]; light->_CosCutoffNeg = (GLfloat) (_mesa_cos(light->SpotCutoff * DEG2RAD)); if (light->_CosCutoffNeg < 0) - light->_CosCutoff = 0;
- else
+ light->_CosCutoff = 0; + else light->_CosCutoff = light->_CosCutoffNeg; if (light->SpotCutoff != 180.0F) light->_Flags |= LIGHT_SPOT; @@ -1265,7 +1265,7 @@ init_light( struct gl_light *l, GLuint n ) ASSIGN_3V( l->EyeDirection, 0.0, 0.0, -1.0 ); l->SpotExponent = 0.0; _mesa_invalidate_spot_exp_table( l ); - l->SpotCutoff = 180.0;
+ l->SpotCutoff = 180.0; l->_CosCutoffNeg = -1.0f; l->_CosCutoff = 0.0; /* KW: -ve values not admitted */ l->ConstantAttenuation = 1.0; |