deviltest.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import pygame
  2. from OpenGL.GL import *
  3. from OpenGL.GLU import *
  4. import DevIL
  5. pygame.init()
  6. screen = pygame.display.set_mode((800, 600), pygame.OPENGL | pygame.DOUBLEBUF)
  7. pygame.display.set_caption('Devil Test')
  8. glDisable(GL_DEPTH_TEST)
  9. glMatrixMode(GL_PROJECTION)
  10. glLoadIdentity()
  11. gluOrtho2D(0, 800, 0, 600)
  12. glMatrixMode(GL_MODELVIEW)
  13. glLoadIdentity()
  14. glEnable(GL_TEXTURE_2D)
  15. DevIL.ilInit()
  16. DevIL.ilutRenderer(DevIL.ILUT_OPENGL)
  17. texture = DevIL.ilutGLLoadImage('devil.gif')
  18. glEnable(GL_TEXTURE_2D)
  19. glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
  20. glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR)
  21. glBindTexture(GL_TEXTURE_2D, texture)
  22. while 1:
  23. event = pygame.event.poll()
  24. if event.type == pygame.QUIT:
  25. break
  26. glClear(GL_COLOR_BUFFER_BIT)
  27. glBegin(GL_QUADS)
  28. glTexCoord2f(0, 0); glVertex2f(-400, -400);
  29. glTexCoord2f(5, 0); glVertex2f(1200, -400)
  30. glTexCoord2f(5, 5); glVertex2f(1200, 1000)
  31. glTexCoord2f(0, 5); glVertex2f(-400, 1000)
  32. glEnd()
  33. glTranslatef(400, 300, 0)
  34. glRotatef(0.5, 0, 0, 1)
  35. glTranslatef(-400, -300, 0)
  36. pygame.display.flip()