Guest User

Untitled

a guest
Apr 24th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. #!/usr/bin/ruby
  2. #
  3. require 'rubygems'
  4. require 'opengl'
  5.  
  6. def init
  7. position = [2, 2, -10, 1]
  8. ambient = [0.5, 0.5, 0.5, 0.0]
  9. specular = [0.225, 0.412, 0.667, 0.0]
  10. spec_reflection = [0.3, 0.3, 0.3, 0.0]
  11. glClearColor(0.7, 0.7, 0.7, 0.7)
  12. glEnable(GL_LIGHTING)
  13. glLight(GL_LIGHT0, GL_POSITION, position)
  14. glLight(GL_LIGHT0, GL_SPECULAR, specular)
  15. glMaterial(GL_FRONT, GL_SPECULAR, spec_reflection)
  16. glMaterial(GL_FRONT, GL_SHININESS, 96)
  17. glLightModel(GL_LIGHT_MODEL_AMBIENT, ambient)
  18. glShadeModel(GL_SMOOTH)
  19. glEnable(GL_COLOR_MATERIAL)
  20. glEnable(GL_LIGHT0)
  21.  
  22. glEnable(GL_DEPTH_TEST)
  23.  
  24. end
  25.  
  26. display = Proc.new do
  27. glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)
  28. color = [0.225, 0.412, 0.667, 0.0]
  29. glColor(color)
  30. glutSolidSphere(0.6, 64, 64)
  31. glutSwapBuffers
  32. end
  33.  
  34. keyboard = Proc.new do |key, x, y|
  35. case (key)
  36. when ?\e
  37. exit(0);
  38. end
  39. end
  40.  
  41. glutInit
  42. glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH)
  43. glutInitWindowSize(500, 500)
  44. glutInitWindowPosition(100, 100)
  45. glutCreateWindow("Yo Mamma")
  46. glutDisplayFunc(display)
  47. glutKeyboardFunc(keyboard)
  48. init
  49. glutMainLoop()
Add Comment
Please, Sign In to add comment