SpriteViewMode.bb 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. ; SpriteViewMode Example
  2. ; ----------------------
  3. Graphics3D 640,480
  4. SetBuffer BackBuffer()
  5. pivot=CreatePivot()
  6. PositionEntity pivot,0,1,0
  7. camera=CreateCamera(pivot)
  8. PositionEntity camera,0,0,10
  9. light=CreateLight()
  10. RotateEntity light,90,0,0
  11. plane=CreatePlane()
  12. ground_tex=LoadTexture("media/Chorme-2.bmp")
  13. EntityTexture plane,ground_tex
  14. sprite=LoadSprite("media/b3dlogo.jpg")
  15. PositionEntity sprite,0,1,0
  16. pitch=-15
  17. yaw=180
  18. roll=0
  19. view_mode=1
  20. view_mode_info$=" (fixed)"
  21. While Not KeyDown(1)
  22. If KeyDown(208)=True And pitch<0 Then pitch=pitch+1
  23. If KeyDown(200)=True And pitch>-89 Then pitch=pitch-1
  24. If KeyDown(205)=True Then yaw=yaw+1
  25. If KeyDown(203)=True Then yaw=yaw-1
  26. If KeyDown(30)=True Then roll=roll+1
  27. If KeyDown(31)=True Then roll=roll-1
  28. ; Change sprite view mode depending on key pressed
  29. If KeyHit(2)=True Then view_mode=1 : view_mode_info$=" (fixed)"
  30. If KeyHit(3)=True Then view_mode=2 : view_mode_info$=" (free)"
  31. If KeyHit(4)=True Then view_mode=3 : view_mode_info$=" (upright1)"
  32. If KeyHit(5)=True Then view_mode=4 : view_mode_info$=" (upright2)"
  33. ; Set sprite view mode
  34. SpriteViewMode sprite,view_mode
  35. RotateEntity pivot,pitch,yaw,0
  36. PointEntity camera,sprite,roll
  37. RenderWorld
  38. Text 0,0,"Use cursor keys to orbit camera around sprite"
  39. Text 0,20,"Press A and S keys to roll camera"
  40. Text 0,40,"Press keys 1-4 to change sprite view mode"
  41. Text 0,60,"SpriteViewMode: "+view_mode+view_mode_info$
  42. Flip
  43. Wend
  44. End