Pour avoir une pause qui soit en moyenne de 10 milisecondes, tu peux aussi regarder combien de temps le sleep() dure, et retirer le temps qui a été trop long au prochain wait...
et ce que tu dois te demander, c'est si tu veux 100 images par secondes ou 100 'update' par secondes... en gros, voilà comment je fais (méthode prodiguée par "killer game programming in java", édité par O'Reilly). Je fais un update du jeu, je fais un rendu à l'écran, et j'attends le reste du temps afin d'obtenir une période de X millisecondes. Je regarde combien de temps le processus a réellement attendu, et je le retient pour le soustraire à X la prochaine fois...
Et si tu veux doubler ton nombre d'update par boucle, tu n'as qu'à mettre 2 fois update() dans ta boucle (c'est pas top du tout, mais comme ça, si ton rendu est vraiment trop lent, ça accélère le jeu...)
Partager