home *** CD-ROM | disk | FTP | other *** search
/ DarkBasic Professional / DarkBasicPro.iso / data1.cab / Lang_Files_(English) / Projects / SphereMapping / SphereMapping.dba next >
Encoding:
Text File  |  2004-09-22  |  2.5 KB  |  97 lines

  1. Rem Project: SphereMapping
  2. Rem Created: 01/08/2002 22:33:07
  3. rem Hours: 7
  4.  
  5. rem Init for best performance
  6. sync on : sync rate 60 : backdrop off : hide mouse
  7. if check display mode(1024,768,32)=1 then set display mode 1024,768,32
  8.  
  9. rem Loading screen
  10. load bitmap "media\gfx\backdrop.jpg",1
  11. copy bitmap 1,0,0,640,480,0,0,0,screen width(),screen height()
  12. sync : delete bitmap 1
  13.  
  14. rem Load model
  15. load object "media\scout\scout2.x",1
  16. load image "media\sky\space.jpg",1
  17. set sphere mapping on 1,1
  18. set object specular 1,0
  19.  
  20. rem Make sky
  21. make object box 2,1100,1000,1000
  22. texture object 2,1
  23. set object cull 2,0
  24. set object light 2,0
  25.  
  26. rem Set camera
  27. position camera 0,0,-120
  28. rotate camera 0,0,0
  29.  
  30. rem Setup ship for cruise
  31. x#=0 : y#=-100 : z#=0
  32. position object 1,x#,y#,z#
  33.  
  34. rem Setup prompt
  35. load image "media\gfx\prompt.bmp",2
  36. load image "media\gfx\strapblank.bmp",3
  37. strapx1=0 : sprite 1,strapx1,480-63,2
  38. strapx2=1024 : sprite 2,strapx2,480-63,2
  39. set sprite alpha 1,196 : set sprite alpha 2,196
  40.  
  41. rem Set particle effect
  42. load image "media\gfx\fire.bmp",4
  43. make particles 1,4,40,100.0
  44. position particles 1,0,-500,0
  45. set particle velocity 1,0.2
  46. set particle speed 1,0.004
  47. set particle gravity 1,-3
  48. set particle life 1,2
  49.  
  50. rem Load and loop space sound
  51. load sound "media\sounds\space.wav",1 : set sound volume 1,80 : loop sound 1
  52. load 3dsound "media\sounds\jet.wav",2 : set sound volume 2,0
  53.  
  54. rem Main loop
  55. do
  56.  
  57.  rem Rotate and move ship
  58.  roll#=wrapvalue(roll#+0.5)
  59.  turn#=wrapvalue(turn#+0.1)
  60.  y#=0-(cos(roll#)*100)
  61.  x#=cos(turn#)*50
  62.  z#=50+(sin(roll#)*100)
  63.  position object 1,x#,115+y#,z#
  64.  xrotate object 1,wrapvalue(90+roll#)
  65.  yrotate object 1,wrapvalue(180)
  66.  zrotate object 1,0
  67.  
  68.  rem Move strap line
  69.  dec strapx1 : if strapx1<=-1024 then strapx1=strapx2+1023
  70.  dec strapx2 : if strapx2<=-1023 then strapx2=strapx1+1024
  71.  sprite 1,strapx1,screen height()-63,2
  72.  sprite 2,strapx2,screen height()-63,3
  73.  
  74.  rem Move camera with ship slightly
  75.  position camera 0,135+(y#/1.1),-100
  76.  zrotate camera wrapvalue(((cos(turn#)*5)))
  77.  
  78.  rem Set emission position of particles
  79.  position particles 1,x#,(115+y#)-(sin(roll#)*58),z#-(cos(roll#)*58)
  80.  rotate particles 1,wrapvalue((0-roll#)-90),0,0
  81.  
  82.  rem Position sound of engine
  83.  position sound 2,x#,115+y#,z#
  84.  position listener 0,115,-100
  85.  scale listener 0.5
  86.  
  87.  rem Then play engine sound
  88.  if sound playing(2)=0 then loop sound 2
  89.  vol=sound volume(2) : if vol<100 then set sound volume 2,vol+1
  90.  
  91.  rem Update screen
  92.  sync
  93.  
  94. rem Endloop
  95. loop
  96.  
  97.