4830l1 Listing 1. Opening a Window, Setting up Lighting and Drawing a Teapot with GLUT from OpenGL.GL import * from OpenGL.GLUT import * def init(): glClearColor(0, 0, 0, 0) glMatrixMode(GL_PROJECTION) glLoadIdentity() glLightfv(GL_LIGHT0, GL_AMBIENT, [0.0, 0.0, 0.0, 1.0]) glLightfv(GL_LIGHT0, GL_DIFFUSE, [1.0, 1.0, 1.0, 1.0]) glLightfv(GL_LIGHT0, GL_POSITION, [0.0, 3.0, 3.0, 0.0]) glLightModelfv(GL_LIGHT_MODEL_AMBIENT, [0.2, 0.2, 0.2, 1.0]) glEnable(GL_LIGHTING) glEnable(GL_LIGHT0) def display(): glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) glMaterialfv(GL_FRONT, GL_AMBIENT, [0.1745, 0.0, 0.1, 0.0]) glMaterialfv(GL_FRONT, GL_DIFFUSE, [0.1, 0.0, 0.6, 0.0]) glMaterialfv(GL_FRONT, GL_SPECULAR, [0.7, 0.6, 0.8, 0.0]) glMaterialf(GL_FRONT, GL_SHININESS, 80) glutSolidTeapot(0.5) glFlush() glutInit('') glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB) glutInitWindowSize(250, 250) glutCreateWindow('Hello GLUT') glutSetDisplayFuncCallback(display) glutDisplayFunc() init() glutMainLoop()