diff options
author | 2009-06-02 22:51:09 -0700 | |
---|---|---|
committer | 2009-06-02 22:51:09 -0700 | |
commit | 7c7dface993a66778c506179ae11cadd6a88f7b1 (patch) | |
tree | e94560a144f32364df9910d0a154aa66450fa319 | |
parent | b42e1ff65ae44a0873959c5defe3ba4826109490 (diff) |
fix a bug in GL lighting where the specular component could be ommited when vertex material was disabled.
the specular enable flag wasn't computed in that case.
-rw-r--r-- | opengl/libagl/light.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/opengl/libagl/light.cpp b/opengl/libagl/light.cpp index 25c41d0c5b9d..bc9449c0bdef 100644 --- a/opengl/libagl/light.cpp +++ b/opengl/libagl/light.cpp @@ -318,6 +318,11 @@ void lightVertexMaterial(ogles_context_t* c, vertex_t* v) vmul3(l.implicitAmbient.v, material.ambient.v, l.ambient.v); vmul3(l.implicitDiffuse.v, material.diffuse.v, l.diffuse.v); vmul3(l.implicitSpecular.v, material.specular.v, l.specular.v); + // this is just a flag to tell if we have a specular component + l.implicitSpecular.v[3] = + l.implicitSpecular.r | + l.implicitSpecular.g | + l.implicitSpecular.b; } // emission and ambient for the whole scene vmla3( c->lighting.implicitSceneEmissionAndAmbient.v, |