love.timer.sleep (Français)

Disponible depuis LÖVE 0.2.1
Ce-tte function n'est pas supporté-e par des versions plus anciennes.

Met en pause le fil d'exécution actuel pour une durée de temps spécifiée.

O.png Cette fonction met en pause la totalité du fil d'exécution pendant toute la durée du sommeil (sleep). Les graphismes ne seront pas tracés, les événements d'entrée ne seront pas déclenchés, le programme ne sera pas exécuté, et la fenêtre ne répondra pas si vous utilisez cela comme u « wait() » dans le fil d'exécution principal. Utilisez à la place love.update ou la bibliothèque de chronomètrage pour cela.  


Fonction

Disponible depuis LÖVE 0.8.0
Ce-tte variant n'est pas supporté-e par des versions plus anciennes.

Synopsis

love.timer.sleep( s )

Arguments

number (Français) s
Secondes pendant lesquelles entrer en sommeil.

Retourne

Rien.

Fonction

Supprimé depuis LÖVE 0.8.0
ce-tte variant n'est plus supporté dans cette version et les versions ultérieures.

Synopsis

love.timer.sleep( ms )

Arguments

number (Français) ms
Millisecondes de sommeil.

Retourne

Rien.

Exemples

Utiliser sleep pour limiter les Images par secondes (IPS ou FPS) à 30

function love.update(dt)
   if dt < 1/30 then
      love.timer.sleep(1/30 - dt)
   end
end

Méthode plus sophistiquée pour limiter à 30 IPS

Cela prend en compte le temps passé à mettre à jour et tracer chaque image temporelle.

function love.load()
   min_dt = 1/30
   next_time = love.timer.getTime()
end

function love.update(dt)
   next_time = next_time + min_dt

   -- reste de la fonction ici
end

function love.draw()
   -- reste de la fonction ici

   local cur_time = love.timer.getTime()
   if next_time <= cur_time then
      next_time = cur_time
      return
   end
   love.timer.sleep(next_time - cur_time)
end

Voir également


Autres langues