diff --git a/panda/src/glstuff/glGraphicsStateGuardian_src.cxx b/panda/src/glstuff/glGraphicsStateGuardian_src.cxx index 44dd4bbc91..429d2e9db8 100644 --- a/panda/src/glstuff/glGraphicsStateGuardian_src.cxx +++ b/panda/src/glstuff/glGraphicsStateGuardian_src.cxx @@ -6428,7 +6428,7 @@ do_issue_material() { call_glMaterialfv(face, GL_SPECULAR, material->get_specular()); call_glMaterialfv(face, GL_EMISSION, material->get_emission()); - glMaterialf(face, GL_SHININESS, min(material->get_shininess(), (PN_stdfloat)128.0)); + glMaterialf(face, GL_SHININESS, max(min(material->get_shininess(), (PN_stdfloat)128), (PN_stdfloat)0)); if (material->has_ambient() && material->has_diffuse()) { // The material has both an ambient and diffuse specified. This