home *** CD-ROM | disk | FTP | other *** search
/ 3D Game Programming for Teens (2nd Edition) / 3DGPFT2E.iso / Source / Chapter13 / demo13-10.bb < prev    next >
Text File  |  2009-01-20  |  1KB  |  67 lines

  1. ; demo13-10 - atoms and pausing
  2. ; -------------------
  3.  
  4. Graphics3D 640,480
  5. SetBuffer BackBuffer()
  6.  
  7. Const P_KEY = 25
  8. Const ESC_KEY = 1
  9. light=CreateLight()
  10.  
  11. camera=CreateCamera()
  12. PositionEntity camera, 0,0,-7
  13.  
  14. ; Creating the nucleus.
  15.  
  16. nucleus=CreateSphere (16)
  17. PositionEntity nucleus, 0,0,1 
  18. tex=LoadTexture( "sunskin.jpg" )
  19. EntityTexture nucleus,tex
  20.  
  21. ; Create a pivot for each orbit.
  22. pivot=CreatePivot()
  23. PositionEntity pivot,0,0,1
  24. pivot2=CreatePivot()
  25. PositionEntity pivot2, 0,0,1
  26. pivot3=CreatePivot()
  27. PositionEntity pivot3, 0,0,1
  28.  
  29. ; Creating each orbit.
  30.  
  31. orbit=CreateSphere(16,pivot)
  32. tex1=LoadTexture( "orbit.jpg" )
  33. EntityTexture orbit, tex1
  34. ScaleEntity orbit, 0.3,0.3,0.3
  35. PositionEntity orbit,4,0,0
  36.  
  37. orbit2=CreateSphere(16,pivot2)
  38. tex2=LoadTexture("orbit.jpg")
  39. EntityTexture orbit2, tex1
  40. ScaleEntity orbit2, 0.3,0.3,0.3
  41. PositionEntity orbit2, 0,0,4
  42.  
  43. orbit3=CreateSphere(16,pivot3)
  44. tex2=LoadTexture("orbit.jpg")
  45. EntityTexture orbit3, tex1
  46. ScaleEntity orbit3, 0.3,0.3,0.3
  47. PositionEntity orbit3, 4,0,0
  48.  
  49. While Not KeyDown(ESC_KEY)
  50.  
  51.  
  52. ; Turn pivots, making atom orbit around the nucleus.
  53. TurnEntity pivot,0,3,0
  54. TurnEntity pivot2, 3,0,0
  55. TurnEntity pivot3, 0,0,3
  56.  
  57. ; Spinning the nucleus.  
  58. pitch#=pitch#+3 yaw#=yaw#+3 roll#=roll#+3
  59. RotateEntity nucleus,pitch#,yaw#,roll# 
  60.  
  61.  
  62. RenderWorld
  63. Flip
  64.  
  65. Wend
  66.  
  67. End