from pyglet.gl import * from wfobject import * from shader import * myshader = Shader([''' #version 130 varying vec4 color; void main() { gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * gl_Vertex; color = gl_Color * dot(gl_LightSource[0].position.xyz,gl_NormalMatrix*gl_Normal); } '''], [''' #version 130 in vec4 color; void main(void) { gl_FragColor = color; } ''']) window = pyglet.window.Window() glEnable(GL_DEPTH_TEST) glEnable(GL_LIGHTING) glEnable(GL_LIGHT0) cow = WFObject('cow.obj') @window.event def on_draw(): glClearColor(0,0,1,0) glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT) glMatrixMode(GL_PROJECTION) glLoadIdentity() glOrtho(-6,6,-6,6,-6,6) glMatrixMode(GL_MODELVIEW) glRotatef(1,0,1,0) myshader.bind() cow.draw() myshader.unbind() @window.event def on_key_press(key,modifiers): pass def update(dt): pass pyglet.clock.schedule_interval(update,1/30.0) pyglet.app.run()