Handle emission and light model ambient value. Test if shininess is 0 to avoid pow(0, 0), which is undefined.