def initLights(): #too hacky? light_enum = (GL_LIGHT0,GL_LIGHT1,GL_LIGHT2, GL_LIGHT3,GL_LIGHT4,GL_LIGHT5, GL_LIGHT6,GL_LIGHT7) numlights = len(mylights) i = 0 for this_light in mylights: glLightModelfv(GL_LIGHT_MODEL_AMBIENT, [0,0,0,0]) glLightfv(light_enum[i], GL_AMBIENT, [0,0,0,0]) glLightfv(light_enum[i], GL_DIFFUSE, this_light.color) glLightfv(light_enum[i], GL_SPECULAR, this_light.color) glLightfv(light_enum[i], GL_POSITION, this_light.location) glEnable(light_enum[i]) i += 1 # Turn on lighting. You can turn it off with a similar call to # glDisable(). glEnable(GL_LIGHTING) def doMaterial(this_material): glMaterialfv(GL_FRONT, GL_AMBIENT, list(this_material.ambientColor) + [1.0]) glMaterialfv(GL_FRONT, GL_DIFFUSE, list(this_material.ambientColor) + [1.0]) glMaterialfv(GL_FRONT, GL_SPECULAR, list(this_material.ambientColor) + [1.0]) glMaterialfv(GL_FRONT, GL_SHININESS,this_material.shininess)