specular lighting added but has errors