fakelight.bb 816 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. Global info1$="Fakelighting demo"
  2. Global info2$="Hit <return> to toggle real/fake lighting"
  3. Include "../start.bb"
  4. AmbientLight 0,0,0
  5. cube=CreateSphere( 32 )
  6. tex=LoadTexture( "brick.bmp" )
  7. EntityTexture cube,tex
  8. range#=5
  9. For k=1 To 6
  10. Read lx#,ly#,lz#,lr#,lg#,lb#
  11. light=CreateLight(2,cube)
  12. LightRange light,range
  13. LightColor light,lr,lg,lb
  14. PositionEntity light,lx,ly,lz
  15. LightMesh cube,lr,lg,lb,range,lx,ly,lz
  16. Next
  17. camera=CreateCamera()
  18. PositionEntity camera,0,0,-5
  19. fake=0
  20. While Not KeyHit(1)
  21. TurnEntity cube,.1,.2,.3
  22. If KeyHit(28)
  23. fake=3-fake
  24. EntityFX cube,fake
  25. EndIf
  26. UpdateWorld
  27. RenderWorld
  28. If fake t$="Y" Else t$="N"
  29. Text 0,0,"Fake light:"+t$
  30. Flip
  31. Wend
  32. End
  33. Data -2,0,0,255,0,0
  34. Data +2,0,0,0,255,0
  35. Data 0,+2,0,255,255,0
  36. Data 0,-2,0,255,0,255
  37. Data 0,0,-2,0,255,255
  38. Data 0,0,+2,255,255,255