Pour expliquer le deltatime, G-Rom a ouvert un post sur ce lien
viewtopic.php?p=173648#p173648
J'ai appliqué ces recommandations avec ce code. J'espère que c'est bien comme ça qu'il fallait le comprendre.
Code : Tout sélectionner
EnableExplicit
; DPI Résolution
Global drx.f, dry.f
; Delta Time
Global StartTime.i, dt.f
drx = DesktopResolutionX()
dry = DesktopResolutionY()
InitEngine3D(#PB_Engine3D_DebugLog) : InitSprite() : InitKeyboard() : InitMouse()
ExamineDesktops()
OpenWindow(0, 0,0, DesktopWidth(0)*0.5,DesktopHeight(0)*0.5, "Test DPI - [Esc] quit",#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0), 0, 0, WindowWidth(0)*drx, WindowHeight(0)*dry, 0, 0, 0)
Add3DArchive(#PB_Compiler_Home + "examples\3D\Data\Textures", #PB_3DArchive_FileSystem)
Add3DArchive(GetCurrentDirectory(), #PB_3DArchive_FileSystem )
CreateCamera(0, 0, 0, 100, 100) : MoveCamera(0,0,3,-6) : CameraLookAt(0,0,0,0)
CreateLight(0,$ffffff, -10000, 10000, 0)
AmbientColor($111111*3)
CameraBackColor(0,$444488)
CreateMaterial(0, TextureID(LoadTexture(#PB_Any, "Dirt.jpg")))
CreateCube(0, 2)
CreateEntity(0, MeshID(0), MaterialID(0))
Repeat
;-1 Initialisation du chrono
StartTime = ElapsedMilliseconds()
While WindowEvent() : Wend
ExamineKeyboard()
ExamineMouse()
;- 3 On applique le delta time
RotateEntity(0, 0.2 * (1+dt), 0.2 * (1+dt), 0.2 * (1+dt), #PB_Relative)
RenderWorld()
FlipBuffers()
;-2 Calcul du deltatime.
dt = (ElapsedMilliseconds() - StartTime) / (1000)
Until KeyboardReleased(#PB_Key_Escape) Or MouseButton(#PB_MouseButton_Middle)