Outils pour utilisateurs

Outils du site


playground:skybox

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révisionLes deux révisions suivantes
playground:skybox [2017/05/09 02:29] falsamplayground:skybox [2017/05/11 18:20] falsam
Ligne 1: Ligne 1:
 +**08-SkyBox.sb** 
 +
 +[[http://falsam.com/sbbjs/skybox.html|Voir]]
 +
 +<file purebasic 08-SkyBox.sb>
 +;Babylon.sbi - Skybox
 +
 +EnableExplicit
 +
 +IncludeFile "babylon/babylon.sbi"
 +
 +Global Camera, Light0, Light1, Sky, Ground, MatGround, Torus0, Torus1, ShadowGenerator
 +
 +Declare LoadGame()
 +Declare RenderGame()
 +
 +UseModule BJS
 +
 +InitEngine(@LoadGame())
 +
 +Procedure LoadGame()   
 +  If CreateScene()
 +    Camera = CreateCamera("camera", 0, 20, -80, #ArcRotate)
 +    
 +    Light0 = CreateLight("light0", 0, 30, 0, 0.6, #Point)
 +    Light1 = CreateLight("light1", 0, 30, 0, 0.2, #Hemispheric)
 +    
 +    ;SkyBox
 +    Sky = SkyBox("Night", "data/textures/sky/night", 1000)
 +    
 +    ;Ground
 +    Ground = CreateGround("Ground", 1000, 1000)
 +    MatGround = CreateMaterial("Grass", "data/textures/grass1.jpg")
 +    ScaleMaterial(MatGround, 40, 40)
 +    SetMaterial(Ground, MatGround)
 +    
 +    ;Torus
 +    Torus0 = CreateTorus("torus0", 8, 2, 32)
 +    MoveMesh(Torus0, 0, 8, 0)
 +    
 +    Torus1 = CreateTorus("torus1", 4, 1, 32)
 +    MoveMesh(Torus1, 0, 8, 0)
 +    
 +    ;Shadow
 +    ShadowGenerator = InitShadow(Light0)
 +    ShadowEmitter(Torus0)
 +    ShadowEmitter(Torus1)
 +    RenderShadows(Ground, #True)
 +       
 +    RenderLoop(@RenderGame())
 +  EndIf
 +EndProcedure
 +
 +Procedure RenderGame()
 +  RotateMesh(Torus0, 0.01, 0.00, 0.02, #PB_Relative)
 +  RotateMesh(Torus1, 0.02, 0.01, 0.00, #PB_Relative)
 +  
 +  If GetCameraBeta(Camera) > 1.50
 +    SetCameraBeta(Camera, 1.50)
 +  EndIf            
 +  
 +  If GetCameraRadius(Camera) < 30
 +    SetCameraRadius(Camera, 30)
 +  EndIf
 +  
 +  RenderWorld() 
 +EndProcedure
 +</file>
 +
  
playground/skybox.txt · Dernière modification : 2023/03/15 15:49 de 127.0.0.1