sprites.bb 1003 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. ;Test Bed
  2. ;David Bird
  3. ;[email protected]
  4. Graphics3D 640,480
  5. SetBuffer BackBuffer()
  6. lit=CreateLight()
  7. cam=CreateCamera()
  8. CameraRange cam,.1,1000
  9. PositionEntity cam,0,0,-10
  10. pl=CreatePlane(1,cam)
  11. PositionEntity pl,0,0,.15
  12. RotateEntity pl,-90,0,0
  13. EntityAlpha pl,0
  14. EntityPickMode pl,2
  15. sprite=LoadSprite("test.jpg")
  16. x#=320
  17. y#=240
  18. xd=1
  19. yd=1
  20. ang#=0
  21. sz#=32
  22. sd=1
  23. alpha#=.9
  24. ald#=-.01
  25. While Not KeyDown(1)
  26. TurnEntity cam,0,0,1
  27. Sprite2d(cam,sprite,x,y,sz,ang,alpha)
  28. x=x+xd
  29. y=y+yd
  30. ang=ang+1
  31. sz=sz+sd
  32. alpha=alpha+ald
  33. If alpha>.98 Or alpha<.02 Then ald=-ald
  34. If sz>128 Or sz<32 Then sd=-sd
  35. If x>624 Or x<16 Then xd=-xd
  36. If y>464 Or y<16 Then yd=-yd
  37. UpdateWorld
  38. RenderWorld
  39. Flip
  40. Wend
  41. FreeEntity pl
  42. FreeEntity cam
  43. EndGraphics
  44. End
  45. Function Sprite2D(cam,sprite,x#,y#,size#,ang#,alpha#)
  46. ent=CameraPick(cam,x,y)
  47. If ent Then
  48. PositionEntity sprite,PickedX(),PickedY(),PickedZ()
  49. ScaleSprite sprite,size/2560,size/2560
  50. RotateSprite sprite,ang
  51. EntityAlpha sprite,alpha
  52. End If
  53. End Function